MS Excel 2012 – 如果等于其他值,则replace值

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

A10 B20 C30 A10 C30 C30 ... 

我想用其他列中的ID保持replace每个值:

 A10 - ID1 B20 - ID2 C30 - ID3 

我需要很多身份证来做普通的replace。 有没有一个棘手的方法来做到这一点,或者我应该使用其他技术(如移动一些程序语言的数据,并在那里做replace)。

先谢谢你。 Joro

您可以使用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))) 

这是一个用于search一系列值/string的macros,并用一组新的值/stringreplace它们:


质量replace


还有一张样张也可以用来testing。

按原样使用macros:

  1. 创build一个名为Categories的新工作表
  2. 把这些值在列A中find
  3. 把replace值放在B列
  4. 在屏幕上调出您的主表(样本表称为数据
  5. 运行macros