如何在 Excel 和 Google 表格中删除重复项
Excel 和 Google 表格的自带工具,以及处理纯列表更快的方法。
每份列表里都会混进重复项:两次导出的数据拼在一起,表单被提交了两次,旧的邮件列表和新的合并在一起。下面是三种最快的清理方法,以及需要注意的陷阱。
在 Excel 中
- 选中数据,包括表头行。
- 依次点击“数据”、“删除重复项”。
- 勾选用来判断两行是否重复的列。全部勾选表示只删除完全相同的行;只勾选“邮箱”列,则每个邮箱地址只保留一行。
- 点击“确定”。Excel 会告诉你删除了多少个重复项,以及保留了多少个唯一值。
Excel 会保留每组重复项中第一次出现的那一行,删除其余的。请先复制一份工作表,因为保存后这个改动就无法撤销了。
在 Google 表格中
- 选中数据范围。
- 依次点击“数据”、“数据清理”、“移除重复项”。
- 勾选数据是否包含标题行,选择要比较的列,然后确认。
另一种方法是用 UNIQUE 函数,它会返回一份去重后的副本,不改动原始数据:=UNIQUE(A2:C500)。
处理纯列表
如果你手上只是一份列表,比如邮箱地址、产品编码、姓名或网址,专门打开表格软件就有点大材小用了。把它粘贴到删除重复项工具中,选择是否忽略大小写和多余空格,然后把清理后的列表复制出来即可。原有顺序会保持不变,工具还会告诉你找到了多少个重复项。
常见陷阱
| 陷阱 | 示例 | 解决方法 |
|---|---|---|
| 大小写不同 | Ada@Example.com 和 ada@example.com | 忽略大小写,或先全部转为小写 |
| 看不见的空格 | 末尾多了一个空格的 "ada@example.com " | 去除首尾空格,或在表格中使用 TRIM 函数 |
| 近似重复 | Jon Smith 和 John Smith | 不是真正的重复,需要人工核对 |
| 比较的列太多 | 同一个邮箱,注册日期不同 | 只比较用来识别记录的那一列 |
Excel 的“删除重复项”不区分大小写,但会把末尾带空格的值视为不同。删除重复项工具可以通过选项同时处理这两种情况。
按某一列去重
如果其他列内容不同,但你想每个客户只保留一行,那就只比较用来识别客户的那一列。在 Excel 中,只勾选这一列即可。如果是一个你不想用 Excel 打开的 CSV,可以先用提取列工具把这一列取出来,再去重。
邮件列表
对于邮箱地址,邮件列表清理工具能做得更多:它会一次性完成转为小写、删除无效地址和去重,还能从粘贴进来的杂乱文本中提取出邮箱地址。