在 Microsoft Excel 中查找多个列之间的匹配项

在 Microsoft Excel 中查找多个列之间的匹配项

我尝试在多列之间找到匹配项,如果匹配,那么我想突出显示所有匹配的行。

这些列可以是这样的——

  1. AAA
  2. 血脑屏障
  3. CCC

示例列/行

AAA      BBB      CCC

INS50    FG23     YU44
INS51    FG23     YU44
INS55    FG23     YU45
INS55    FG23     YU46
INS54    FG27     YU49
INS54    FG28     YU49
-----    FG28     YU89
INS59    ----     YU49

如果我们考虑最后三行

INS54 与 FG28 和 YU49 有关系

FG28 与 YU49 和 YU89 有关系

现在我想创建匹配的行

INS54 FG28 YU49 FG27
FG28  YU89 YU49

我不知道这是怎么可能的。

非常感谢您的帮助。提前致谢。

答案1

很难理解你到底在问什么,但这里有一个结果可能会让你接近你想要去的地方。

您的问题似乎分为两部分:首先列出 AAA 列中项目的关系,然后列出 BBB 列中项目的关系。因此,下面的结果表分为两部分。

在此处输入图片描述

在 E2 中填写并向下填充的此公式用于列出 A 列中的不同值:

=IFERROR(INDEX($A$2:$A$9,MATCH(0,INDEX(COUNTIF($E$1:E1,$A$2:$A$9),0,0),0)),"")

类似地,E8 中的此公式列出了 B 列中的不同值:

=IFERROR(INDEX($B$2:$B$9,MATCH(0,INDEX(COUNTIF($E$7:E7,$B$2:$B$9),0,0),0)),"")

问题的第一部分似乎想要列出 B 列和 C 列中与 A 列中的不同值相对应的值。F2 中的数组公式执行以下操作:

=IFERROR(INDEX($B$2:$C$9,SMALL(IF($A$2:$A$9=$E2,ROW($A$2:$A$9)-1,""),MOD(COLUMN(),2)+1),TRUNC(COLUMN()/2)-2),"")

必须用Ctrl+输入Shift Enter,而不是直接输入Enter。输入后,可以向下和向右填充以在结果表的上部产生结果。请注意,列出了一些重复的值。

问题的第二部分似乎想要 C 列中与 B 列中的不同值相对应的值的列表。F8 中的这个数组公式更简单,因为它只需从一列中选择:

=IFERROR(INDEX($C$2:$C$9,SMALL(IF($B$2:$B$9=$E8,ROW($A$2:$A$9)-1,""),COLUMN()-5)),"")

这里的假设是第一部分最多有两个相关值,第二部分有 4 个。如有必要,可以进行调整。

如果您想进一步探究,可以使用与 E 列中列出不同值的公式类似的公式删除这些结果中的重复项。

相关内容