我在MS Excel中寻找一个公式来检查包含句子的单元格是否匹配(至少)给定范围内的一个子字符串,如果匹配,则返回该子字符串值
我可以使用以下示例来解释它。如果句子(右侧)包含表格(左侧)中定义的水果之一,则结果应返回(第一个)匹配的水果:
优选地,查找函数应该不区分大小写。此外,我不可能使用VBA - 它需要使用Excel原生函数执行。
提前谢谢!
答案 0 :(得分:1)
您可以在数组公式中使用SEARCH
。然后使用INDEX
和MATCH
结果SEARCH
:
=INDEX(Substrings, MATCH(TRUE, ISNUMBER(SEARCH(Substrings, Sentence)), 0))
由于它是一个数组公式,你需要在键入公式而不是仅按 Ctrl + Shift + Enter >输入
编辑:我忘了提到上面的公式是区分大小写的。谢谢jblood94提及它。以下公式使用 LOWER
使其不区分大小写。
=INDEX(Substrings, MATCH(TRUE, ISNUMBER(SEARCH(LOWER(Substrings), LOWER(Sentence))), 0))