如何在Excel中映射两个工作表的指定列并在新列中匹配填充对应KO_ID值
实现Excel跨表匹配并新增列填充的方法
我帮你整理了两种实用的方法来完成这个需求,适配不同版本的Excel:
方法一:用XLOOKUP(推荐,Excel 365/2021及以上版本)
XLOOKUP是新版Excel的强大查找函数,用法更直观,不需要拘泥于查找列的位置:
- 打开Excel文件切换到Sheet1,在O列右侧新增一列,在单元格
P1输入表头KO_ID。 - 在
P2单元格(对应第一行数据的KO_ID列)输入以下公式:
公式说明:=XLOOKUP(N2, Sheet2!$C:$C, Sheet2!$E:$E, "")N2:Sheet1当前行需要匹配的N列单元格值Sheet2!$C:$C:Sheet2中作为匹配依据的第3列(唯一值列),用绝对引用$保证下拉公式时列范围不变Sheet2!$E:$E:Sheet2中要提取的第5列(KO_ID列)"":如果没有匹配到对应值,返回空字符串,你也可以改成"无匹配"这类提示文本
- 按回车确认后,把鼠标放在
P2单元格右下角,当光标变成十字填充柄时,下拉到所有数据行,自动完成所有匹配结果的填充。
方法二:用VLOOKUP(兼容旧版Excel)
如果你用的是Excel 2019及更早版本,VLOOKUP是更稳妥的选择:
- 同样在Sheet1新增
KO_ID列并设置表头。 - 在
P2单元格输入公式:
公式说明:=IFERROR(VLOOKUP(N2, Sheet2!$C:$E, 3, FALSE), "")N2:Sheet1中需要匹配的N列值Sheet2!$C:$E:Sheet2的C到E列区域,VLOOKUP要求查找值必须在区域的第一列,这里C列刚好是我们的匹配列3:KO_ID在Sheet2的E列,对应C到E区域的第3列,所以填写3FALSE:开启精确匹配模式,因为Sheet2第3列是唯一值,必须精确匹配才准确IFERROR(..., ""):避免匹配不到时显示错误值,改为返回空字符串
- 下拉填充柄完成所有数据行的公式填充。
注意事项
- 确保Sheet2的第3列(C列)确实是唯一值,这样匹配结果不会出现重复或错误
- 如果Sheet2的数据有更新,Sheet1的公式会自动同步结果(只要Excel处于自动计算模式)
- 若想让公式更易读,可以给Sheet2的匹配区域创建命名区域,比如选中C到E列后定义名称
KO_Mapping,之后公式可以写成=XLOOKUP(N2, KO_Mapping[Reprsentative_bacteria IP_address], KO_Mapping[KO_ID], "")
内容的提问来源于stack exchange,提问作者deep771992
相关产品推荐
相关产品推荐

