Excel 宏:替换整个单元格内容;替换 1 但不是 10、11、21 等

use*_*678 1 macros find-and-replace microsoft-excel

我需要用 Excel 电子表格中的单词替换大量数字。例如:

1 = hello
12 = goodbye
4 = cat
Run Code Online (Sandbox Code Playgroud)

等等。我可以用标准的搜索和替换来完成,但我有一个很大的列表需要处理(大约 240 个数字/单词组合),所以我想我会使用一个宏。

我有这个:

1 = hello
12 = goodbye
4 = cat
Run Code Online (Sandbox Code Playgroud)

但它替换了 12 中的 1,因此单元格读取 hello2 而不是 goodbye。我怎样才能让它只影响只包含特定数字的单元格,“匹配整个单元格内容”的工作方式?

任何帮助表示赞赏。

pip*_*eek 6

更改顺序很好,只要表中的每个值都将被替换。如果您的工作表包含 11,但不会被替换,那么更改顺序仍将替换为 hello1。
要使用匹配整个单元格指定

,LookAt:=xlWhole
Run Code Online (Sandbox Code Playgroud)

作为 Replace 方法的另一个参数。Replace 是 Range 上的有效方法,因此您的 For 循环不是必需的。您可以改为指定

Range("A1:A1000").Replace What:="12", Replacement:="goodbye", LookAt:=xlWhole  
Range("A1:A1000").Replace What:="4", Replacement:="cat", LookAt:=xlWhole
Run Code Online (Sandbox Code Playgroud)