两份名单核对差异还在一个个找?Excel加一列COUNTIF公式,3秒揪出所有对不上的
财务给你一份系统导出的报销名单,行政那边给你一份人工登记的名单,两边人数差了七个。领导让你查清楚是谁多了谁少了,半小时后要结果。你把两列名字排在一起,开始一个个往下比,比到第三十行发现顺序对不上,只好重来。这种活我见过有人做了一下午,其实它只需要一个公式和三秒钟。
核心思路:不是「比对」,而是「点名」
很多人卡住,是因为脑子里想的是把两列对齐再逐行比较。但两份名单的顺序、人数都不一样,永远对不齐。
换个思路:拿着A名单的每个名字,去B名单里点一次名,看看喊得应喊不应。喊得应的就是两边都有,喊不应的就是A有B没有。这就是COUNTIF在做的事,它的作用是「数一数某个值在某个范围里出现了几次」。
公式怎么写:一行搞定,往下一拖
假设A名单的姓名在A列,从A2开始;B名单的姓名在D列,从D2到D200。
在B2单元格输入这个公式:=IF(COUNTIF($D$2:$D$200,A2)=0,"B名单缺失","两边都有"),然后双击单元格右下角的小方块,公式自动填满整列。
结果里所有显示「B名单缺失」的,就是行政那边漏登记的人。注意范围一定要按F4加上美元符号锁定,否则往下拖的时候范围会跟着跑,结果全错。这是新手最容易翻车的地方。
反过来再做一遍:在E2输入 =IF(COUNTIF($A$2:$A$300,D2)=0,"A名单缺失","两边都有"),往下拖,就能找出行政有而系统没有的人。两个方向都查完,七个人的差异全部落地。
三个让结果不准的隐形坑
第一个坑是空格。系统导出的数据经常在名字前后带看不见的空格,「张伟」和「张伟 」在Excel眼里是两个人。解决办法:先用 =TRIM(A2) 清一遍,或者用查找替换,把空格全部替换为空。
第二个坑是同名。如果名单里有两个「李娜」,COUNTIF会数出2,用等于0来判断依然成立,但你无法区分是哪一个。碰到这种情况,别用姓名当依据,用工号或者身份证后六位,唯一值才是可靠的核对基准。
第三个坑是数字和文本。工号如果一边存成了数字、一边存成了文本,看着一样,COUNTIF也认不出来。选中整列,点数据里的「分列」,一路下一步到最后选「常规」,能把格式统一过来。
结果出来后,顺手让它更好看
选中标记列,点「开始」里的「条件格式」,选「突出显示单元格规则」里的「文本包含」,填「缺失」,设成浅红填充。所有问题行立刻变红,你截个图发给领导,比发一堆文字说明清楚十倍。
如果这个核对每个月都要做,把公式和条件格式做成一个固定模板存下来。下个月你只需要把两份新名单粘进去,答案自动出来,全程不到一分钟。
数据核对这类活,最消耗人的不是难度,是那种「不敢确定自己没看漏」的心理负担。公式不会累也不会跳行,它给你的是一个可以拿出去交差的确定结果。今晚就把这两条公式抄进备忘录,下次名单一到手,三秒出答案。你还有哪些每月都要重复的核对任务?评论区说出来,我们一起找找有没有一次性的解法。
本文使用AI工具辅助整理资料与搭建框架核心观点与案例由真人撰写完成 | 欢迎留言讨论
夜雨聆风