【问题标题】:Match 2 columns based on a % difference within the value根据值内的百分比差异匹配 2 列
【发布时间】:2015-03-25 02:26:34
【问题描述】:

我正在寻找一种方法来匹配两个 excel 表。

我基本上有两个系统,其中的值仅与某些 ID 不完全匹配。系统 2 中的值通常与系统 1 相差 10-20%。

下面是工作表的样子:

我尝试在 ID 上使用vlookup,然后通过使用带有 ID 的过滤器手动检查匹配的值。但是,这需要很长时间,而且非常麻烦。

有什么建议可以更轻松地匹配这两个表吗?

非常感谢您的回复!

【问题讨论】:

  • 我很困惑。你是基于ID匹配还是基于Value匹配? 10-20% 与解决方案有什么关系?
  • @user3561813 首先我想匹配 ID,然后匹配值,如果它是 10% - 20% 的范围,与系统 1 值相比。

标签: excel excel-formula spreadsheet vba


【解决方案1】:

如果您查看 G3 的公式,您将涉及 D3:E3 和 A:B(其中 A10:B10 是匹配值)。

当有人说他们正在寻找一个百分比时,了解“什么的百分比...?”会很有帮助。如果计算是 ABS(12 - 15)/15 而不是 ABS(12 - 15)/12,您会收到不同的结果。一个可能在公差范围内,另一个可能不在。

无论如何,G3 的公式类似于,

=ABS(E3-VLOOKUP(D3,A:B, 2, FALSE))/E3 ...或者,

=ABS(E3-VLOOKUP(D3,A:B, 2, FALSE))/VLOOKUP(D3,A:B, 2, FALSE)

这会产生 0.25%0.20% 的结果,具体取决于您计算百分比的方式。您可以将其包装在 IF 语句中以获得 YES/NO 文本结果,或使用自定义数字格式,如 [Color3][>0.2]\NO;;[Color10]\Y\E\S;@ 将显示数值大于 20% 时红色 NO,数值介于 0 和 20% 之间时绿色 YES。负值不必考虑,因为 ABS 将它们从考虑中删除。

       

出于演示目的,我仅复制了您的示例数据的最少部分,但也许您可以从中获得一些想法。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2019-08-14
    • 2015-09-04
    • 1970-01-01
    • 2017-03-20
    • 1970-01-01
    • 2017-05-19
    相关资源
    最近更新 更多