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

MS Excel 2012-如果等于其他值,则替换该值,excel,replace,Excel,Replace,我有一列包含示例数据(重复): 我想用其他列中的ID hold替换每个值: A10 - ID1 B20 - ID2 C30 - ID3 我必须有很多身份证才能用普通的身份证替换。是否有一个棘手的方法来做到这一点,或者我应该使用其他技术(如在某些程序语言中移动数据并在那里进行替换) 先谢谢你。 Joro以下是一个宏,用于搜索一系列值/字符串并将其替换为一组新的值/字符串: 那里有一个样本表,你也可以用它来测试 要按原样使用宏,请执行以下操作: 创建名为“类别”的新工作表 将要查找的值放在A

我有一列包含示例数据(重复):

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

A10 - ID1
B20 - ID2
C30 - ID3
我必须有很多身份证才能用普通的身份证替换。是否有一个棘手的方法来做到这一点,或者我应该使用其他技术(如在某些程序语言中移动数据并在那里进行替换)

先谢谢你。
Joro

以下是一个宏,用于搜索一系列值/字符串并将其替换为一组新的值/字符串:



那里有一个样本表,你也可以用它来测试

要按原样使用宏,请执行以下操作:

  • 创建名为“类别”的新工作表
  • 将要查找的值放在A列中
  • 将替换值放在B列中
  • 在屏幕上显示主工作表(示例工作表,称为数据
  • 运行宏

  • 您可以使用
    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)))
    
    = IF(ISNA(VLOOKUP(A1, $D$1:$E$3, 2, FALSE), A1, VLOOKUP(A1, $D$1:$E$3, 2, FALSE)))