【问题标题】:Excel: match two columns with two other columnsExcel:将两列与另外两列匹配
【发布时间】:2015-06-16 04:47:23
【问题描述】:

在 excel 中,我有四列。 A 列和 B 列相互对应,C 列和 D 列相互对应。我想做的是创建一个公式,该公式从 A 列中获取一个值,搜索 C 列,寻找匹配项。如果找到匹配项,它将从 B 列中获取相应的值(同一行),并在 D 列中搜索与 B 列中的值匹配的值。如果两个值最终都找到匹配项,则返回 1 E 列,在 A 和 B 所在的行中。

这是我目前在 E 列中输入的内容。

=IF(MATCH(A1,$C:$C,0)MATCH(B1,$D:$D,0),1,0)

我的问题是我不知道如何使 B 的匹配项仅检查 A 找到匹配项的行。

如果在理解我的问题时遇到任何问题,或者您需要我帮助澄清某些问题,请告诉我。我已经有几天这个问题了,似乎无法弄清楚。我会在接下来的一个小时里积极检查这个帖子。

谢谢。

【问题讨论】:

  • 那么您是否需要在 C 列和 D 列的同一行中才能返回匹配项,或者只看到 A2 匹配 C 列某处而 B2 匹配 D 列某处?跨度>
  • 是的,你必须在C列和D列的同一行。

标签: excel


【解决方案1】:

我会给出两个答案。

第一个要求匹配列 C 和 D 位于同一行。因此,如果 A2 匹配 C3、C4、C5,则 B2 将需要匹配 D3、D4 或 D5

=IF(SUMPRODUCT(--($C$1:$C$5=A1),--($D$1:$D$5=B1))>0,1,0)

由内而外 --($C$1:$C$5=A1) 将 A1 与 C1 到 C5 中的所有值进行比较,如果为真则返回 1,如果为假则返回 0 Sumproduct 将这些相乘,因此您需要在双方都得到 true if 语句仅用于将数字限制为 1(如果匹配 2 行等,它将返回 2)

根据问题展开 - 是的,你可以在公式中使用 --(C:C=A1) ,它只需要更长的时间来计算,因为它正在处理更多的单元格

--(C:C=A1) 将返回一个类似于 {0,0,0,1,0,0,1} 的数组,每次 C 列中的单元格等于 A1 时为 1。
--(D:D=B1) 公式将在每次 D 中的单元格匹配时对 1 执行相同的操作B1 说{0,1,0,0,0,0,1}。 Sumproduct 将这些数组乘以{0*0,1*0,0*0,1*0,0*0,0*0,1*1} 并将结果相加(0+0+0+0+0+0+1) = 1

这个 sumproduct 公式可以返回任何整数值(0 如果没有匹配,1 如果有一组匹配的单元格,2 如果有 2 组匹配的单元格,等等)。

通过将其包装在 if(sumproduct(..)>0,1,0) 中只是意味着它将始终返回 0(不匹配)或 1(一个或多个匹配项)。

希望这会有所帮助。

编辑:不需要公式

下一个公式看起来匹配 C 列某处的 A2,然后看起来匹配 D 列某处的 B2 不必是同一行。

=IF(IFERROR(MATCH(A1,$C$1:$C$5,0)*MATCH(B1,$D$1:$D$5,0),0)>0,1,0)

匹配你知道 iferror 只是让它返回 0 如果没有匹配 如果值大于 0(如果两列都匹配),则 if 语句只返回 1。

【讨论】:

  • 第一个公式就是我要找的那个,你介意进一步解释一下这个公式吗?我不明白 Sumproduct 是如何工作的。我也可以使用($C:$C=A1)之类的东西吗?我也不明白 -- 正在做什么,以及 >0,1,0。当它发现陈述为真时,这就是告诉它要返回什么的原因吗?我想在 E 列中返回 1 的原因是我可以使用条件格式来突出显示 A & B 在 C & D 中找到对应匹配项的每一行。
  • 非常感谢您迄今为止的所有帮助,非常感谢。
【解决方案2】:

这样就可以了

=SUMPRODUCT((C:C=A1)*(D:D=B1))

您可以缩小跨越的高度(例如,=SUMPRODUCT((C1:C100=A1)*(D1:D100=B1))

【讨论】:

    【解决方案3】:

    使用ISERROR 检查MATCH 是否找到您要查找的值。

    【讨论】:

      猜你喜欢
      • 2011-10-16
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2020-01-11
      相关资源
      最近更新 更多