技术需求:对比Excel两Tab的Column A,导出缺失项至第三Tab
筛选主数据中未出现在报告数据中的内容
嘿,这个需求我之前帮同事处理过,给你两个靠谱的方法,不管数据量大小都能轻松实现:
方法一:Excel公式实现(适合小数据量)
如果你数据行数不多,用公式就能快速搞定:
- 打开你的表格,切换到Tab 3,在A2单元格输入以下数组公式:
=IFERROR(INDEX(Tab1!A:A,SMALL(IF(COUNTIF(Tab2!A:A,Tab1!A:A)=0,ROW(Tab1!A:A)),ROW(A1))),"") - 输入完成后,按
Ctrl+Shift+Enter触发数组计算(新版Excel可能自动识别,直接回车就行) - 把A2单元格的公式下拉填充,直到出现空白单元格,这些非空白的内容就是Tab1里没出现在Tab2的A列数据
- 小提示:如果Tab1里有重复值,想只保留唯一结果,可以把公式改成:
=IFERROR(INDEX(UNIQUE(Tab1!A:A),SMALL(IF(COUNTIF(Tab2!A:A,UNIQUE(Tab1!A:A))=0,ROW(UNIQUE(Tab1!A:A))),ROW(A1))),"")
方法二:Power Query实现(适合大数据量)
如果你的数据行数很多(比如上万行),公式会变慢,用Power Query更高效:
- 切换到Tab 1,选中A列数据区域,点击顶部菜单栏的「数据」→「从表格/区域」,在弹出的窗口勾选「我的表格有标题」(如果A列有表头的话),点击确定进入Power Query编辑器
- 同样操作,把Tab 2的A列数据也加载到Power Query编辑器
- 在Power Query编辑器中,选中Tab1的查询(左侧面板),点击「合并查询」→「合并查询作为新查询」
- 在合并窗口中:
- 上方选择Tab1的查询,下方选择Tab2的查询
- 两个查询都选中A列作为关联列
- 连接类型选择「左反」(这个类型会只保留Tab1中不在Tab2的行)
- 点击确定
- 新生成的查询里,你会看到Tab1的A列和一个空白的Tab2列,右键删除Tab2列,只保留需要的A列
- 点击「关闭并上载」,选择加载到Tab 3的A列起始位置,完成!
内容的提问来源于stack exchange,提问作者Carl Richmond
相关产品推荐
相关产品推荐

