ARTICLE · 1126654
Excel去重,先说清一行是什么
订单号出现两次,你让AI“帮我去重”。它保留一行,表格变清爽了,销售金额却少了一截。
原因可能很简单:这个订单买了两件商品,原表本来就应当有两行。重复的是订单号,重复的未必是业务记录。
去重前先判断“一行是什么”,比先找删除按钮更重要。
先写一句话:这张表每行代表什么
一行代表一个客户、一笔订单,还是订单中的一项商品?这句话决定了哪些字段可以用来识别同一条记录。课程中的“每行一条记录”,首先要求你把记录的含义说清楚。

看下面三个虚构例子:
同一订单的杯子和盘子各占一行。这是两项商品明细,不能只按订单号删掉其中一行。 同一客户在两个月各下一单。这是两次交易,不能只按客户名称去重。 同一条明细被完整导入两遍。它才可能是重复导入,但还要核对是否遗漏了用于区分记录的字段。
常用的判断字段可能是订单号与明细行号,也可能是业务系统提供的唯一记录编号。具体选什么,应由业务含义决定;不要默认“姓名相同”就一定是同一个人。
你勾选的列,只是判断重复的依据
微软官方说明:在工作表的“删除重复项”中,选中的列决定如何判断重复;命中后,删除的是所选数据区域里的整条记录,其他未勾选列的内容也会随该记录删除。
例如两行订单号相同,商品、金额却不同。如果只勾订单号,商品和金额的差别就不会参与判断。按钮不会替你理解“这是两件商品”。
因此,先选完整的业务数据区域并确认表头,再设置判重列。不要只截取编号列操作,让它和旁边的商品、金额失去对应关系。
第一条留下,不代表最新一条留下
微软对工作表“删除重复项”的说明是:保留列表中首次出现的记录。它不会自动按更新时间选择最新版本。
假设同一业务编号有一行“处理中”和一行“已完成”,这可能是状态历史。要保留历史,就都留下;要制作当前状态表,就另写规则,按可信的更新时间或版本字段选择,并处理同时间的冲突。
“最新”“最终”“有效”都不是按钮自带的业务判断。状态冲突、更新时间缺失、两行金额不同,都应先放入待核对清单。本文只讲工作表的删除重复项,不把这一保留顺序套用到Power Query。
真要删除前,做这四步
在副本上操作:先写记录定义和保留规则,再把疑似重复挑出来核对。只有能说明为什么删、删哪一行,才进入删除步骤。

第一步,保留原件,记录原行数和关键金额合计。第二步,列出判重字段及不能合并的差异。第三步,核对疑似重复组,区分重复导入、多商品明细、状态历史与信息冲突。第四步,在副本处理后,回查被删记录、剩余行数和金额变化。
可以先用“开始→条件格式→突出显示单元格规则→重复值”检查单列重复。它只提供筛查线索,不能证明整条业务记录重复;多列组合还需要按已确认的规则逐组核对。
如果让AI辅助,可以直接给它这段任务:
请先只读检查,不删除。说明这张表每行代表什么,列出建议判重字段;输出疑似重复组、组内差异和判断依据。无法区分的标为待核对。经确认后,再在新副本处理,并保留被移除记录及前后核对结果。
去重后的金额不一定要与原金额相等,因为确实重复导入的金额会被移除。但每一笔减少,都应能对应到确认删除的记录。看到行数下降,只能说明数据少了,不能说明数据更正确。
操作依据:微软官方《Find and remove duplicates》《Filter for unique values or remove duplicate values》;方法参考《Excel数据透视表全能营》的记录、数据源规范与清洗知识卡。
想系统学习如何把业务明细整理成可分析的数据源,课程完整介绍与学习入口,请点击文末“阅读原文”。