Excel 两列数据快速对比差异:3 种实用方法详解
核对两列数据是否一致,是办公中最常见的场景之一。本文整理三种常用方法:用条件格式高亮差异、用 IF 函数生成对照结果、用 COUNTIF 找出单边独有的数据,附详细步骤与避坑要点,帮你高效完成对账。

工作中经常需要核对两列数据是否一致,比如对账、比对库存、检查名单更新等。手动一行一行看既费眼又容易出错。Excel 自带多种对比方法,下面三种覆盖了绝大多数场景,挑一种用就行。
适用版本
- Microsoft 365 中的 Excel
- Excel 2021 / 2019 / 2016(Windows 与 Mac)
- Excel 网页版(大部分功能可用)
下面以 A 列和 B 列、从第 2 行开始为例。
方法一:用条件格式高亮差异单元格
适合需要「一眼看出」差异的场景,差异单元格会被自动填色。
- 选中 A 列需要对比的范围,例如
A2:A100。 - 点击菜单栏「开始」→「条件格式」→「新建规则」。
- 在弹窗中选择「使用公式确定要设置格式的单元格」。
- 在公式框内输入:
=A2<>B2。 - 点击「格式」,选择一种醒目的填充色(例如浅红),一路「确定」。
- 再为 B 列(
B2:B100)做同样设置,公式同样填=A2<>B2。
完成后,A 列、B 列中内容不同的单元格会被自动标红。
方法二:用 IF 函数生成「相同/不同」对照列
如果你需要一份明确写好结果的清单,可以加一列用 IF 函数。
- 在数据右侧空白列的第一个单元格(例如 C2)输入:
=IF(A2=B2,"相同","不同") - 按下回车后,C2 会显示「相同」或「不同」。
- 选中 C2,光标移到右下角变成黑色十字时双击,或下拉填充到整列。
- (可选)点击 C 列的下拉筛选箭头,只勾选「不同」,就能只看差异行。
如果需要区分大小写,把公式换成:
=IF(EXACT(A2,B2),"相同","不同")
方法三:用 COUNTIF 找出「只在某一列存在」的数据
前两种都是按行对比。如果两列顺序不一样,或你想知道 A 列里有哪些在 B 列根本没有,可以用 COUNTIF。
- 在 C2 输入:
=IF(COUNTIF(B:B,A2)=0,"A 列独有","")含义:A2 这个值如果在 B 列一次也没出现,就标记为「A 列独有」。 - 下拉填充至末行。
- 在 D2 输入:
=IF(COUNTIF(A:A,B2)=0,"B 列独有","")反过来检查 B 列独有的数据。 - 下拉填充。
完成后,C 列和 D 列会清楚显示各自「单边存在」的数据,方便进一步处理。
注意事项
- 多余空格会导致永远不一致:遇到「明明看着一样却标不同」时,先用
=TRIM(A2)=TRIM(B2)测试,或用「查找和替换」清掉空格。 - 文本与数字格式不一致也会匹配失败,比如 A 列是文本 "123",B 列是数值 123;改成一致的单元格格式即可。
- 数据量特别大时 COUNTIF / VLOOKUP 会变慢,几万行没问题,几十万行建议改用 Power Query 的合并查询。
- 操作前最好把原文件另存一份备份,避免误操作后无法撤销。
小结
三种方法的适用场景:条件格式适合「肉眼扫一眼」、IF 适合「输出一份清单」、COUNTIF 适合「找出单边独有的数据」。配合筛选、排序等常用工具,日常数据对标的效率能提升一大截。
常见问题
Q.为什么两个单元格看着一样,公式却显示「不同」?
最常见的原因是隐藏空格或不可见字符。可以临时把公式改成 =TRIM(A2)=TRIM(B2) 试一下;如果还不一致,把单元格内容复制到记事本里看是否前后有多余空格。
Q.想区分大小写对比应该用哪个方法?
用 EXACT 函数,例如 =IF(EXACT(A2,B2),"相同","不同")。EXACT 区分大小写但会忽略格式差异,刚好满足多数场景。
Q.数据量到几十万行时哪种方式最稳?
条件格式在十几万行以上会明显卡顿。建议改用 Power Query 的「合并查询」,或在数据库里比对,速度会快很多。
参考来源
AI 生成内容标识:本文由 AI 辅助生成,经编辑整理,内容仅供参考。





