Excel功能可根据旧/新ID列表更改ID号



我有一个id号列表,列出了现在必须拥有新id的人的id号。如下图所示,在excel中,我将旧id和新id放在相邻的表中。所以旧的ID:111实际上是ID:123等等。我有一个需要更改的ID列表(更改此ID),我希望新更改的ID进入结果列。那么,有没有一种方法可以让一个函数为我做这件事,而不是手动浏览和更改它们?它会查看"更改此ID"列中的内容并查看444,然后转到"旧ID"列并查找444,再转到同一行中的"新ID"列,查找101,然后将其放入"结果ID"列。然后去下一行,做333,以此类推

Old ID | New Id | Change This Id| Result Id| Name | Address |
-------------------------------------------
111    | 123    | 444           | 101      |
222    | 456    | 333           | 789      | 
333    | 789    | 111           | 123      |
444    | 101    | ...           | ...      |
555    | 334    | ...           | ...      |
...    | ...    |

您可以使用VLOOKUP函数并编写一个公式来查找New ID中需要更改的Id。

    A      | B      | C             | D        | E    | F       |
 1  Old ID | New Id | Change This Id| Result Id| Name | Address |
    -------------------------------------------------------------
 2  111    | 123    | 444           | 101      |
 3  222    | 456    | 333           | 789      | 
 4  333    | 789    | 111           | 123      |
 5  444    | 101    | ...           | ...      |
 6  555    | 334    | ...           | ...      |
    ...    | ...    |

因此,对于上面的数据集,使用行号(1、2等)和列名(A、B等),可以在单元格D1中编写如下公式:

=VLOOKUP(C2,A:B,2,FALSE)

可能有一些身份证没有改变。为了避免这些Id出现错误并将其复制过来,您可以将VLOOKUP公式封装在IFERROR函数中(感谢@Jeeped的想法,请参阅下面的评论),如下所示:

=IFERROR(VLOOKUP(C2, A:B, 2, FALSE), C2)

一旦公式在单元格D1中起作用,就可以使用自动填充功能填充D列中的所有新Id。

参考

Microsoft Office Reference 上的VLOOKUP函数

Microsoft Office Reference 上的IFERROR功能

在Microsoft Office Reference 上自动填充

最新更新