excel表格去重,最稳妥的常规操作路径是:先备份好数据,选中要处理的区域,点顶部菜单栏「数据」选项里的「删除重复项」,按照你判断重复的规则给对应列打勾,确认后系统会统计删除数量。本次演示用的软件是microsoft excel,版本为microsoft 365。要是不想改动原始表格,可以用「高级筛选」功能直接导出不重复的记录;如果只是单独要生成一列不重复的清单,直接用 unique 函数就行。
动手之前先想清楚,你要按哪几列的规则判定重复。比如只按手机号去重,只要手机号相同就会自动留下第一条数据;要是按姓名、手机号、订单号三列一起校验,得三列内容完全一样才会被判定为重复删掉。这个规则一旦选错,删掉的数据基本没法靠肉眼补回来,一定要先确认好。
第一步:选中要去重的数据区域
先在原表旁边复制一份完整数据,或者直接把当前工作表另存一份备份。随后选中包含表头的全部数据区域,切到「数据」选项卡,找到「删除重复项」按钮。记得要把表头一起选进去,这样下一步弹出的窗口里能直接按列名选择,不容易勾错列。

第二步:勾选判断重复的列
弹出的「删除重复项」窗口里,先确认「数据包含标题」这个选项已经打勾了。要是要求整行内容完全一样才删,就把所有列的勾选都保留;如果只按某一列去重,比如订单号或者手机号,就只勾那一列就行。点确定前再扫一眼列名,别不小心把备注、日期这类经常变动的列误选进去。

第三步:查看删除结果
操作完成后Excel会弹出提示,告诉你总共删了多少条重复值,剩下多少条唯一值。你得对照自己的预期核对下数字:比如你肉眼看着只有两三条重复,结果提示删了几十条,先点撤销回去重新检查勾选的列;要是提示删了0条,大概率是内容里有多余空格、全角半角字符不统一、大小写不一样或者藏了看不见的特殊字符,导致看起来内容一样实际系统判定不同。

第四步:打开高级筛选入口
要是你需要完整保留原表,不想直接在上面删行,改用「高级筛选」更合适。选中源数据后,切到「数据」选项卡,在「排序和筛选」分区点「高级」按钮。这个方法会把不重复的记录直接复制到表格的其他空白区域,原始数据一点都不会动。

第五步:复制唯一记录到新位置
在弹出的「高级筛选」窗口里选「将筛选结果复制到其他位置」,列表区域默认会自动识别原数据范围,你在「复制到」的输入框里点选一个空白单元格,再勾上「选择不重复的记录」,点确定之后,刚才选的新位置就会生成去重后的完整清单,原表完全不会被改动。

第六步:用 UNIQUE 生成不重复清单
用的是Microsoft 365版本的话,直接在空白单元格里输入 =UNIQUE(B5:C15),就能把指定区域里的所有唯一行自动溢出填充到旁边的空白区域。这个方法特别适合做动态的品类清单、客户名单,源数据更新之后去重结果会自动跟着刷新;要是你用的是WPS或者旧版Excel,得先确认下软件支不支持这个函数。

UNIQUE 的语法是 =UNIQUE(array, [by_col], [exactly_once]),参数别写反:array 是你要去重的区域;by_col 省略或者填 FALSE 就代表按行比较,填 TRUE 代表按列比较;exactly_once 省略或者填 FALSE 会返回去重后的全部唯一项,填 TRUE 只返回整份数据里只出现过一次的项。
| 参数 | 是否必填 | 怎么填 | 适用场景 |
|---|---|---|---|
array |
必填 |
A2:A100 或 B5:C15
|
指定要去重的单列、多列或多行区域。 |
by_col |
可选 |
FALSE 或 TRUE
|
大多数表格按行去重,省略即可;处理横向数据才填 TRUE。 |
exactly_once |
可选 |
FALSE 或 TRUE
|
想排除所有重复项、只留出现一次的数据时填 TRUE。 |
常见报错有两个:结果区域有内容挡住的时候会弹出 #SPILL!,清空右侧或者下方占了溢出位置的单元格就能解决;引用区域里有空白单元格的话,结果里可能带出空白或者0,可以把公式改成 =UNIQUE(FILTER(A2:A100,A2:A100<>""))。需要排序的话外面套一层 SORT 就行,比如 =SORT(UNIQUE(A2:A100));要按两列共同规则去重,直接选两列区域输入 =UNIQUE(A2:B100),别只选其中一列。
如果这张表后续还要继续录入新数据,用 UNIQUE 或者高级筛选更稳妥;如果已经是最终整理好的名单,确认备份完成后再用「删除重复项」直接清理。去重完成后随机抽几条原本的重复记录核对下结果,尤其是手机号、订单号、身份证号这类绝对不能误删的字段,一定要多检查。


















