首页 > 解决方案 > Excel中的表差异

问题描述

在 Excel 中,我怎样才能得到 2 个表之间的差异?

我有 2 个表:A 和 B。B
是 A 的子集。换句话说,B 的所有行/记录都包含在 A 中,反之亦然。

我想得到
A - B
即我想要一个输出,它只给我 A 中而不是 B 中的记录。

另外,更一般地说,如果 B 不是子集,我将如何得到
A∪B - A∩B?

标签: sqlexcelexcel-formulaexcel-2010vba

解决方案


如果只对数据集进行一次,我通常会使用它VLOOKUP来实现这一点。只要VLOOKUP在大表上写一个公式,不在小表中的行就会返回#N/A错误。当我们过滤掉错误行时,我们将留下减去的行。

另一方面,这也可以使用 Power Query 来实现,这是一种更清洁的方式恕我直言。对于 Excel 2010,您应该下载并安装它。对于较新版本,Power Query 本身包含在 Excel 中。

我可以解释 Office 365 的流程,因为我有那个版本;对于以前的版本,可能会有细微的变化。

  • 首先使用数据/从表/范围菜单将您的表放入 Power Query 。
  • 当您将两个表都添加到 Power Query 时,右键单击左侧“查询”窗格中的空白区域,然后转到“新建查询/组合/合并查询为新”菜单:

在此处输入图像描述

  • 在此屏幕中,选择您的表格(首先选择较大的表格),CTRL 选择要减去的表格字段,然后在底部组合中选择Left Anti 。当你确定时,你将有一个减去的新表。

在此处输入图像描述 *在主菜单中选择关闭并加载,您的新表格将出现在 Excel 的新工作表中。* 当原始表格发生更改时,只需在 Excel 中按数据/刷新,您生成的表格就会相应刷新。


推荐阅读