Excel VBA查找和replace实例

我正在使用下面的代码来查找和replaceExcel中的文本string中的某些单词。 我的问题是代码重新replace已被replace的单词。 例如,如果我有一个文本string

“男孩骑着自行车上车,然后骑着自行车回来”

在我的名单中,我有

AB cycle bike bike cycle 

我想用“自行车”这个词来代替“自行车”,但是之后的另一个词“自行车”将会变成“自行车”。

所以我想从这个得到

“男孩骑着自行车上车,然后骑着自行车回来”

对此

“男孩骑着自行车上车,然后骑着自行车回来”

当我运行代码时,它将两个单词转换为自行车,这是合乎逻辑的,因为它会发现单词“先循环,然后将其改为单车,然后将单词改为自行车,然后将replace这两个单词以循环执行”The boy rode他在车道上循环,然后骑着自行车回来“

所以基本上一旦一个字被replace,我不希望代码再次取代它?

 Sub MultiFindNReplace() Dim Rng As Range Dim InputRng As Range, ReplaceRng As Range xTitleId = "KutoolsforExcel" Set InputRng = Application.Selection Set InputRng = Application.InputBox("Original Range ", xTitleId, InputRng.Address, Type:=8) Set ReplaceRng = Application.InputBox("Replace Range :", xTitleId, Type:=8) Application.ScreenUpdating = False For Each Rng In ReplaceRng.Columns(1).Cells InputRng.Replace what:=Rng.Value, replacement:=Rng.Offset(0, 1).Value Next Application.ScreenUpdating = True End Sub 

非常感谢