我需要一个函数,它将搜索一个单元格来查找多个关键字文本字符串(模型号),并返回它找到的每个模型号。在我的所有研究中,我只找到了提供一个匹配关键字的解决方案,但我希望所有匹配关键字。
仅找到一个关键字的解决方案示例:Excel: Search for a list of strings within a particular string using array formulas?
我想要的例子:
要搜索的单元格(A1)包含:
A-007858 CustomerCompanyName D1001,S1135,BE60和R235 New 6和8包
搜索关键字(在单独的工作表A1-A70上):
A32: D1001
A43: S1135
A6: BE60
A64: R235
所需的输出:在搜索单元格(A1)旁边的单元格B1、C1、D1和E1中显示找到的每个模型号(D1001、S1135、BE60、R235)。模型编号的顺序并不重要。我更喜欢Excel函数解决方案,而不是VBA。
发布于 2016-07-27 15:06:20
将此公式放入B1并复制如下:
=IFERROR(INDEX(Sheet2!$A$1:$A$70,AGGREGATE(15,6,ROW(Sheet2!$A$1:$A$70)/(ISNUMBER(SEARCH(Sheet2!$A$1:$A$70,$A1))),COLUMN(A:A))),"")
将Sheet2
替换为列表所在工作表的名称。
它将按照另一张单子的顺序排列。
发布于 2016-07-27 15:11:36
如果您没有太多的关键字,您可以简单地这样做:
B1 = IF(ISERROR(SEARCH("D1001",A1)),"","D1001")
可以将"D1001“替换为对另一个工作表中的单元格的引用。C1:E1类似。
“如果你有很多东西,那么你需要更多的东西,就像ScottCraner建议的那样。”
https://stackoverflow.com/questions/38624481
复制