查找string并返回来自相邻单元格的信息
使用Excel 2010.我需要查看一组单元格中是否存在另一组单元格中的string,如果是,则返回与该string匹配的相邻单元格的信息。 我原本是用SEARCH,ISNUMBER和嵌套的IF语句完成的,但是我的源数据集有几十个条目,必须search的string有几百个条目。 数据类似于图片中的数据(一个简单的例子):
对于有限的数据集,我使用嵌套的IF语句,如:
IF(ISNUMBER(SEARCH($D$2,$A2,1)),"Cat Info",IF(ISNUMBER(SEARCH($D$3,$A2,1)),"Dog Info",IF(ISNUMBER(SEARCH($D$4,$A2,1)),"Elephant Info","Not Found")))
但是现在这两套数据都太大了,无法做到这一点。
我需要做的是在列A中searchstring中的关键字。如果find关键字,我需要从列E中返回相应的信息。
例如,在B2栏中,由于单词dog
在A2中,所以我希望E3( Dog Section
)的内容显示在B2中。
我的关键字列表是唯一的(列D,列表),我知道零或一个关键字将出现在列A(TheString)的string中。
我认为,INDEX&MATCH函数可能是我的解决scheme的一部分,但我不确定如何find哪个List关键字在string中,然后返回Information列的值。
不需要VBA。 这可以用一个简单的公式完成:
在单元格B2中input此公式:
=LOOKUP(2,1/SEARCH(D$2:D$7,A2),E$2:E$7)
根据需要向下复制。
注意:将范围参考调整为您的数据的大小。
没有做到这一切,但这个公式
= MAX(IF(ISNUMBER(SEARCH(D1,$ A $ 1:$ A $ 4,1)),ROW($ A $ 1:$ A $ 4),0))
数组公式
将会给你包含D1等的A1:a4所在的行。 那么你可以索引。 但是它只会显示最大的行,所以如果它在1&2,那么它将只显示第2行。
干杯。