根据部分关键字在合并数据中模糊查询
原创作者 | 李锐
微信公众号 | Excel函数与公式(ID:ExcelLiRui)
个人微信号 | (ID:ExcelLiRui520)
根据部分关键字在合并数据中模糊查询
昨晚的文章让Excel自动查询你喜爱的演员上没上春晚,可以根据输入的演员查询到是否上春晚,但对登上春晚的节目无法显示更多详细信息。
有学员看完文章后提问,如果想根据演员的部分关键字,在数据源中的合并数据中模糊查询出节目的出场顺序、节目分类和节目名称,可以实现吗?
今天就借这个机会说下根据部分关键字在合并数据中的模糊查询的实战应用,看完觉得好的,记得去底部点个好看再分享给朋友,我会根据大家的反馈调整发文内容及写法。
案例描述
先来看下这个案例的数据源。
工作表“春晚节目单”是数据源表,里面D列中包含众多演员的合并信息。等下要查询的演员的部分关键字,就是从这里面查找。
其他几列分别包含节目的出场顺序、分类以及节目名称,如下图所示。
(下图为数据源所在工作表)
下面是Excel计算公式所在工作表,其中黄色区域为公式计算生成。
A列的查询信息可能是演员全名也可能是部分关键字,要求根据A列的信息从上图中的数据源表中查询对应的节目出场顺序、节目分类和节目名称。
(下图为公式所在工作表)
由于数据源表中的D列中是多个演员姓名合并在一起,所以无法直接用INDEX+MATCH查找组合。
而且此案例还需要根据部分关键字模糊查询,这两点要求需要同时满足。
在看下面的解决方案之前,请你先独立思考,带着思路和问题继续向下看。
解决方案
思路提示:使用LOOKUP函数万能公式。
根据部分关键字查询的需求可以想到使用FIND函数进行文本模糊识别。
B2单元格输入以下公式,向下向右填充公式。
=IF(A2="","",LOOKUP(1,0/FIND($A2,春晚节目单!$D$2:$D$33),春晚节目单!A$2:A$33))
写好公式后,如下图所示。
(下图为公式示意图)
一句话解析:
用FIND函数在数据源表中根据部分关键字查找,再利用LOOKUP万能公式提取结果。
此案例借助了LOOKUP排错查找特性和万能公式,这两点在函数初级班都专门讲过。