MS Excel 2012 - 如果等于其他值,则替换值

时间:2012-02-18 13:03:01

标签: excel replace

我有一个包含样本数据的列(重复):

A10
B20
C30
A10
C30
C30
...

我想在其他列中用ID hold替换每个值:

A10 - ID1
B20 - ID2
C30 - ID3

我必须使用普通替换来执行此操作。有没有一种棘手的方法可以做到这一点,或者我应该使用其他技术(比如用某种程序语言移动数据并在那里进行替换)。

提前谢谢你。 Joro

2 个答案:

答案 0 :(得分:2)

您可以使用VLOOKUP在没有任何VBA的情况下执行此操作。将所有键/值对放在一个2列数组中,例如D1:E3。假设您的数据列以A1开头,请将此公式放在B1列中:

= VLOOKUP(A1, $D$1:$E$3, 2, FALSE)

然后复制粘贴。

如果并非所有原始值都映射到新ID,则VLOOKUP将返回“#N / A”。如果你想保留这些的原始值,你的公式会更复杂一些:

= IF(ISNA(VLOOKUP(A1, $D$1:$E$3, 2, FALSE), A1, VLOOKUP(A1, $D$1:$E$3, 2, FALSE)))

答案 1 :(得分:1)

这是一个用于搜索一系列值/字符串并用一组新的值/字符串替换它们的宏:


<强> Mass Replace


您可以使用样本表来测试它。

按原样使用宏:

  1. 创建一个名为类别
  2. 的新工作表
  3. 将值列在A列中
  4. 将替换值放在B列
  5. 在屏幕上显示主要工作表(样本表称为数据
  6. 运行宏