我尝试在多列之间找到匹配项,如果匹配,那么我想突出显示所有匹配的行。
这些列可以是这样的——
- AAA
- 血脑屏障
- 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 列中列出不同值的公式类似的公式删除这些结果中的重复项。