使用索引匹配检查一个单元格中的多个值

我正在使用索引匹配检查表中的多个值。 现在我的问题是,我有一个单元格中的多个值。

我的表看起来像这样:

在这里输入图像描述

第一个公式如下所示:

=INDEX(C2:C11;MATCH(F2&G2;INDEX($A$2:$A$11&$B$2:$B$11;0);-1)) 

正如你所看到的,它只适用于HIGH ,但是当它是LOW它是错误的(在上图中用红色标出)

任何build议,如何解决?

您将不得不通过使用-1作为可选的[match_type]¹来抽取某种types的通配符匹配来查找一个string中的string,而不是匹配的MATCH函数查找。

字符串中的子字符串的两列查找

H2中的数组公式2是,

 =INDEX($C$2:$C$11; MATCH("*"&G2&"*"; IF($A$2:$A$11=F2; $B$2:$B$11); 0)) 

该公式假定您不会通过在KLLTTL中find像KLTT这样的行业来获取您的行业数据的误报 。 如果您的行业可能产生这样的误报,那么您将添加<逗号> <空格>分隔符。 在这种情况下,数组公式2将是,

 =INDEX($C$2:$C$11; MATCH("*, "&G2&", *"; IF($A$2:$A$11=F2; ", "&$B$2:$B$11&", "); 0)) 

两列查找通配符

请注意, <comma> <space>分隔符已被添加到源和目标。

¹MATCH 函数中的1-1的 [match_type] 不能在未sorting的数据上使用。 在未sorting的数据上使用时,正确的结果比可靠更重要。

² arrays公式需要用Ctrl + Shift + Enter 来确定。 一旦正确input第一个单元格,就可以像任何其他公式一样向下或向右填充或复制它们。