用公式对比两个 Excel 表,提取出唯一的差异值

文摘   2024-11-19 19:00   上海  

公众号平台最新的推送规则对技术类文章不太友善,如果不想错过干货,请务必 “设为星标”哦!!!


点击上方蓝字 --> 点击“...”--> 选择“设为星标


从数据区域中匹配出与查找区域不一致的所有单元格,之前给大家分享过最优的 PQ 解法。有宝子询问用公式是否能实现?


必须能啊,强大的 365 函数可以轻松解决需求。


案例:


将下图 1 中左侧数据表的姓名去重,然后与 D 列的姓名相比,提取出所有未在 D 列中出现过的唯一姓名,排成一列。


效果如下图 2 所示。


解决方案:


1. 将 G 列作为辅助列,在 G2 单元格中输入以下公式 --> 回车:

=UNIQUE(TOCOL(A2:B10))


公式释义:

  • TOCOL(A2:B10):将 A2:B10 区域的单元格合并成一列;

  • UNIQUE(...):从上述列中提取出唯一值


2. 将 H 列作为第二个辅助列,在 H2 单元格中输入以下公式 --> 下拉复制公式:

=IF(ISNONTEXT(XLOOKUP(G2,D:D,D:D)),G2,NA())


公式释义:

  • XLOOKUP(G2,D:D,D:D):从 D 列中查找 G2 单元格的值,并返回找到的结果;

  • ISNONTEXT(...):判断上述公式结果是否不是文本,是文本的话表示能匹配到结果,不是文本则说明匹配不到;匹配不到的,返回 true,反之则返回 false;

  • IF(...,G2,NA()):如果匹配不到,则返回 G2 单元格的值,否则显示错误值;也就是从 G 列中提取出未在 D 列中出现过的值


3. 在 E2 单元格中输入以下公式 --> 回车:

=TOCOL(H2:H17,2)


公式释义:

  • 再一次使用 tocol 函数将 H 列的公式结果转换成一列,去除错误值;

  • 参数 2 表示忽略错误值


转发、点赞、在看也是爱!

Excel学习世界
你遇到的所有 Excel 坑,我都帮你趟过了。
 最新文章