比较两个表

我们有两张表(例如,新旧版本的价目表),我们需要比较并快速找出差异:

比较两个表

很明显,新的价目表中增加了一些东西(枣、大蒜……),一些东西消失了(黑莓、覆盆子……),一些商品的价格发生了变化(无花果、甜瓜……)。 您需要快速找到并显示所有这些更改。

对于 Excel 中的任何任务,几乎总是有不止一个解决方案(通常是 4-5 个)。 对于我们的问题,可以使用许多不同的方法:

  • 功能 VPR (VLOOKUP) — 在旧价格表中查找新价格表中的产品名称并将旧价格显示在新价格旁边,然后找出差异
  • 将两个列表合并为一个,然后基于它构建一个数据透视表,其中的差异将清晰可见
  • 使用 Excel 的 Power Query 加载项

让我们按顺序排列它们。

方法一、用VLOOKUP函数比较表

如果您完全不熟悉这个美妙的功能,那么首先看看这里并阅读或观看有关它的视频教程 - 为自己节省几年的生命。

通常,此函数用于通过匹配一些常用参数将数据从一个表拉到另一个表。 在这种情况下,我们将使用它将旧价格推入新价格:

比较两个表

那些出现#N/A 错误的产品不在旧列表中,即被添加。 价格变化也清晰可见。

优点 这种方法:简单明了,正如他们所说的“流派的经典”。 适用于任何版本的 Excel。

缺点 也在那里。 要搜索添加到新价格表中的产品,您必须在相反的方向执行相同的程序,即在 VLOOKUP 的帮助下将新价格拉至旧价格。 如果明天桌子的大小发生变化,那么必须调整公式。 好吧,在非常大的表(> 100 万行)上,所有这些快乐都会大大减慢。

方法 2:使用数据透视表比较表

让我们一张一张地复制我们的表格,添加一列带有价格表名称的列,以便稍后您可以从哪个列表中了解哪一行:

比较两个表

现在,基于创建的表,我们将通过 插入 - 数据透视表 (插入 - 数据透视表). 让我们扔一个字段 产品 到线、场的面积 价格 到列区域和字段 ЦENA 进入范围:

比较两个表

如您所见,数据透视表将自动从新旧价目表中生成所有产品的总列表(不重复!)并按字母顺序对产品进行排序。 您可以清楚地看到添加的产品(它们没有旧价格)、删除的产品(它们没有新价格)和价格变化(如果有)。

此类表格中的总计没有意义,可以在选项卡上禁用它们 构造函数 - 总计 - 禁用行和列 (设计——总计).

如果价格发生变化(但货物数量没有变化!),那么只需通过右键单击它来更新创建的摘要就足够了 - 刷新.

优点:对于大型表,这种方法比 VLOOKUP 快一个数量级。 

缺点:需要手动将数据相互复制,并添加一列以价目表名称。 如果桌子的大小发生变化,那么您必须重新做所有事情。

方法 3: 使用 Power Query 比较表

Power Query 是 Microsoft Excel 的免费插件,它允许您从几乎任何来源将数据加载到 Excel 中,然后以任何所需的方式转换这些数据。 在 Excel 2016 中,此加载项已默认内置在选项卡上 时间 (数据), 对于 Excel 2010-2013,您需要从 Microsoft 网站单独下载并安装它 - 获取一个新选项卡 电源查询.

在将我们的价目表加载到 Power Query 之前,必须先将它们转换为智能表。 为此,请选择包含数据的范围,然后按键盘上的组合 按Ctrl+T 或选择功能区上的选项卡 主页 – 格式为表格 (首页——表格格式). 可以在选项卡上更正创建的表的名称 构造函数 (我会离开标准 表1 и 表2,默认获取)。

使用按钮在 Power Query 中加载旧价格 从表/范围 (从表/范围) 从标签 时间 (日期) 或从选项卡 电源查询 (取决于 Excel 的版本)。 加载后,我们将使用命令从 Power Query 返回 Excel 关闭并加载 – 关闭并加载… (关闭并加载 - 关闭并加载到…):

比较两个表

…然后在出现的窗口中选择 只需创建一个连接 (仅限连接).

对新的价目表重复相同的操作。 

现在让我们创建第三个查询,它将结合和比较前两个的数据。 为此,请在选项卡上的 Excel 中选择 数据——获取数据——合并请求——合并 (数据——获取数据——合并查询——合并) 或按下按钮 结合 (合并) 标签 电源查询.

在join窗口中,在下拉列表中选择我们的表,选择其中有商品名称的列,在底部,设置join方法—— 完成外部 (全外):

比较两个表

点击后 OK 应该出现一个包含三列的表格,在第三列中,您需要使用标题中的双箭头扩展嵌套表格的内容:

比较两个表

结果,我们得到了两个表中数据的合并:

比较两个表

当然,最好通过双击更易于理解的名称来重命名标题中的列名:

比较两个表

现在是最有趣的。 转到选项卡 添加栏 (添加栏目) 然后单击按钮 条件列 (条件栏). 然后在打开的窗口中,输入几个测试条件及其相应的输出值:

比较两个表

它仍然可以点击 OK 并使用相同的按钮将生成的报告上传到 Excel 关闭并下载 (关闭并加载) 标签 主页 (首页):

比较两个表

美:

此外,如果将来价格表发生任何变化(添加或删除行,价格变化等),那么只需使用键盘快捷键更新我们的请求就足够了 按Ctrl+其他+F5 或通过按钮 全部刷新 (全部刷新) 标签 时间 (日期).

优点: 也许是最美丽、最方便的方式。 与大桌子巧妙地配合使用。 调整表格大小时不需要手动编辑。

缺点:需要安装 Power Query 加载项(在 Excel 2010-2013 中)或 Excel 2016。 不能更改源数据中的列名,否则会报错“找不到某某列!” 尝试更新查询时。

  • 如何使用 Power Query 从给定文件夹中的所有 Excel 文件中收集数据
  • 如何在 Excel 中查找两个列表之间的匹配项
  • 合并两个不重复的列表

发表评论