很多小伙伴在工作中都会遇到这样的场景:手里有两个独立Excel文件,需要通过同一ID列关联,把一个表的数据批量匹配到另一个表后面,手动复制粘贴不仅慢还容易出错。今天就给大家分享超实用的Excel匹配公式,新手也能直接套用,零失误完成数据合并,省时又省力。
XLOOKUP公式解析在最后,介绍每个部分填写什么
一、适用场景
本次教程完全还原职场常见场景,更换为更易区分的文件名,一看就懂:
表1(数据源表):数据源表.xlsx,工作表名「汇总结果」,ID在A列,需匹配的数据为B-M列(即需要复制到另一个表的数据);
表2(目标表):目标数据表.xlsx,ID在A列(与表1ID一一对应),需将表1的B-M列数据,按ID精准匹配到本表A列后方;
核心需求:无需手动复制,通过ID列跨Excel文件,批量、精准合并数据,避免出错。
表1数据
二、操作前提(必看!否则公式无效)
必须同时打开「数据源表.xlsx」和「目标数据表.xlsx」两个Excel文件,公式才能正常读取跨文件的数据,缺一不可。
三、公式直接套用(两种版本,任选其一)
所有操作均在「目标数据表.xlsx」中进行,公式复制粘贴即可用,无需手动修改,步骤超简单!
版本1:新版Excel(含XLOOKUP函数,推荐)
打开「目标数据表.xlsx」,在B2单元格(A列ID后方第一列,即第一个要匹配数据的单元格)输入以下公式,回车确认:
=XLOOKUP($A2,[数据源表.xlsx]汇总结果!$A:$A,[数据源表.xlsx]汇总结果!B:B,"")
=XLOOKUP($A2,[数据源表.xlsx]汇总结果!$A:$A,[数据源表.xlsx]汇总结果!B:B,"")
如果想取B-E列的数据,就将公式改为
=XLOOKUP($A2,[数据源表.xlsx]汇总结果!$A:$A,[数据源表.xlsx]汇总结果!B:E,"")
然后将B2单元格中的公式向下填充即可(或者选中b2,复制,然后去b3单元格粘贴,也能把公式粘过去)
版本2:老版Excel(无XLOOKUP,通用VLOOKUP版)
如果你的Excel是老版本,没有XLOOKUP函数,直接用这个公式,兼容所有版本,操作步骤和新版一致:
=IFERROR(VLOOKUP($A2,[数据源表.xlsx]汇总结果!$A:$M,COLUMN(B1),0),"")
=IFERROR(VLOOKUP($A2,[数据源表.xlsx]汇总结果!$A:$M,COLUMN(B1),0),"")
同样在「目标数据表.xlsx」的B2单元格输入,向右拉至M列、向下拉填充即可。
四、公式简单说明(新手也能懂)
精准匹配:以「目标数据表.xlsx」A列的ID为依据,一对一匹配「数据源表.xlsx」汇总结果表的ID,不会错配;
自动填充:向右拖动匹配所有需要的列(B-M列),向下拖动覆盖所有数据行,不用逐行逐列输入公式;
容错处理:如果「目标数据表」的ID在「数据源表」中找不到,会自动显示空白,不会出现报错,不影响表格美观和后续操作。
五、样例文件说明(可直接测试)
本次配套2份样例Excel文件,完全还原上述场景,可直接下载测试,替换成自己的数据就能用:
样例1:「数据源表.xlsx」,工作表「汇总结果」,含ID列(A列)+ 待匹配的B-M列测试数据;
样例2:「目标数据表.xlsx」,仅含ID列(与样例1ID对应),可直接粘贴上述公式,测试数据匹配效果,快速掌握操作方法。
记住公式+填充步骤,1分钟就能完成跨Excel文件的ID匹配合并,职场效率直接拉满,新手也能轻松上手!
我们来解析一下公式,
=XLOOKUP( ):核心函数,作用就是「按条件查找并返回对应数据」,是新版Excel专门用来匹配数据的函数,比老版VLOOKUP更简单、更灵活,新手直接套用模板即可。
$A2:「要查找的内容」(关键!)
- 含义:我们要根据「目标数据表.xlsx」中的ID去匹配数据,$A2就是「当前行的ID」(A列是ID列,2是当前行号);
- 填写要求:固定不变!不管你匹配到哪一列、哪一行,这里都填$A2($符号是固定列,避免向右拖动时跑偏,只变行号、不变列号)。
[数据源表.xlsx]汇总结果!$A:$A:「查找的范围」(去哪里找ID)
- 含义:告诉Excel,去「数据源表.xlsx」这个文件、「汇总结果」这个工作表里,找ID列($A:$A就是A列,即数据源表的ID列);
- 填写要求:只改3处(新手对照改):
1. 数据源表.xlsx:换成你自己的「数据源文件名称」(比如之前的HIS.xlsx);
2. 汇总结果:换成你数据源表的「工作表名称」(比如你的表叫Sheet1,就改成Sheet1);
3. $A:$A:固定不变(因为数据源表的ID在A列,和目标表一致)。
[数据源表.xlsx]汇总结果!B:E:「要返回的内容」(找到ID后,要拿什么数据)
- 含义:找到匹配的ID后,返回「数据源表.xlsx」→「汇总结果」工作表里,B列到E列的所有数据(就是只匹配B、C、D、E四列);
- 填写要求:和上一部分对应,只改3处,和上面一致:
1. 数据源表.xlsx:改自己的数据源文件名;
2. 汇总结果:改自己的数据源工作表名;
3. B:E:改成你需要匹配的「数据源表列范围」(比如要匹配B到G列,就改成B:G;要匹配单一列B列,就改成B:B)。
"":「找不到匹配项时显示的内容」
- 含义:如果「目标数据表.xlsx」的某个ID,在「数据源表.xlsx」里找不到,就显示空白(双引号里什么都不写,就是空白);
- 填写要求:可改可不改!不想显示空白,也可以改成“无匹配”“未找到”,比如写成"无匹配"(注意引号是英文半角)。