在数组中搜索单独数组中的文本字符串,返回该文本字符串(Excel)

时间:2017-10-10 19:43:42

标签: excel excel-formula

我有一列文本值(下面的C列),它们的长度各不相同。我有一个单独的文本值数组(下面的A列)。我想要一个公式,它将查看C列中的字符串并返回它匹配的A列中的单词。如果有多个匹配(很少见,可能不会发生),它只返回一个。

请看我的例子:

Example

D列是我要找的结果。如您所见,这将需要某种模糊字符串匹配。这个词可以出现在单元格的任何地方。它不需要区分大小写。但是我需要把它从字符串中拉出来作为结果。

谢谢!

4 个答案:

答案 0 :(得分:5)

使用此:

=INDEX(A:A,AGGREGATE(15,6,ROW($A$2:$A$5)/(ISNUMBER(SEARCH($A$2:$A$5,C2))),1))

enter image description here

答案 1 :(得分:0)

您也可以尝试此公式=INDEX(A:A,SUMPRODUCT(MATCH(1,NOT(ISERR(SEARCH(A:A,C2)))*1,0)))。使用CTRL + SHIFT + ENTER输入它,因为它是一个数组公式。

enter image description here

答案 2 :(得分:0)

还有一个,稍微简单一些:

=IF(COUNTIF($C$1:$C$100," * "&A2&" * ")>0,A2,"")

答案 3 :(得分:0)

这个公式似乎对我有用: (请使用Ctrl + Shift + Enter键使数组公式生效)

{=INDEX($A$2:$A$5,MATCH(1,COUNTIF(C2,"*"&$A$2:$A$5&"*"),0))}

Screenshot of Excel sheet

相关问题