如何在excel中使用一列作为另一列中的搜索参数,以仅输出某些字符串

Jon*_*nny 2 excel vba excel-vba

这个问题源于我的另一篇文章.(请参阅excel中的列搜索特定字符串,其中字符串在每个单元格中是随机的)

工作簿示例

使用上面的图像作为参考,我试图使用列E作为"查找值"搜索列B(实际上超过1000行).最终目标是"仅"显示在C列中显示的名称.技巧是所有随机生成的字符包含名称.以下是我希望数据表的样子.公式或模块应该工作,但vlookup和其他查找功能我无法工作.

在此输入图像描述

lor*_*i_m 11

对于工作表函数方法,您可以输入C3并填充此公式:

=LOOKUP(8^5,SEARCH(E$3:E$7,B3),E$3:E$7)
Run Code Online (Sandbox Code Playgroud)

选择常数8 ^ 5 = 32768大于最大可能的字符串长度,以便LOOKUP返回最后一个匹配值.如果没有找到字符串,则公式返回#N/A.