0

我将从描述我的数据开始

List1:
Company           Result
---------
Company1 (1234)   1
Company1 (1445)   1
Company3blabla    2
Company4          0

LookupList:
Company     Index
------------------
*Company1*    1
*Company3*    2

我正在尝试找到一个公式,如果 List1 中的每个 Company包含来自 LookupList 的匹配项(因此存在 * 通配符),它将搜索该公式,如果是这样,它将返回相应的索引值,如结果所示柱子。

到目前为止,我得到了一个公式,如果匹配则返回 1,否则返回 0,但我不知道如何从那里获取索引值:

{=MAX(ISNUMBER(SEARCH('LookupList'!$A$1:$A$2,List1[[#This Row],[Company]]))+0)}

4

1 回答 1

0

您不需要通配符(SEARCH 会自动在其他文本中搜索),因此您可以删除这些通配符并在结果列中使用此公式来获取 INDEX 值

=IFERROR(LOOKUP(2^15,SEARCH('LookupList'!$A$1:$A$2,List1[[#This Row],[Company]]),'LookupList'!$B$1:$B$2),"")

如果没有匹配,这会给你一个空白 - 如果需要,将末尾的“”更改为“不匹配”之类的文本

于 2013-02-26T15:40:07.987 回答