一文搞定Excel中的关键词模糊查找!

今天的主题就是关键词查找,废话就不说了! 直接来看效果图
功能说明: 根据输入的关键词,把名称中包含此关键词的信息显示出来!
实现方式: 纯Excel函数!
实用级别: ☆☆☆☆☆
教学方式:主思路,辅助多篇相关函数教程!
▼ 功能演示
下面我们就来详细聊聊如何实现:
相关函数及知识点总览如下:
▼ 知识点总览
以上的顺序对应的就是整个问题的处理思路:下面详解
本文由“壹伴编辑器”提供技术支持
我们需要的只是数据源中的部分列:
▼ 数据源
01 | 使用FIND+ISNUMBER查找到包含关键
=ISNUMBER(FIND($C$2,J5:J15))
解释说明
1、FIND(查找的内容,查找的单元格或区域)
FIND的结果只有两种,如何知道就会返回查找到的位置,查找不到就会返回一个错误值,所以我们判断是否查找到到,只需要判断结果是否是数值即可!
2、ISNUMBER(待检测的内容)
判断待检测的内容是否是数值,如果是就返回TRUE,否则返回FALSE
本文由“壹伴编辑器”提供技术支持
在01中,我们使用FIND+ISNUMBER已经知道包含查找关键的内容,但是我们最后想要的不是是否包含,满足包含条件所在的行,有了行我们可以使用INDEX获取到对应交叉点的值!
函数详解
FIND函数详解:FIND和SEARCH有什么区别?
ISNUMBER过于简单,不再发文
02 |  IF+ROW 拿到满足条件的行
=IF(ISNUMBER(FIND($C$2,J5:J15)),ROW(J5:J15))
解析说明
在01中,我们通过FIND+ISNUMBER得到了哪些是包含关键的,结果是一个逻辑值,那么我们就可以使用IF判断,满足条件的就返回对应的行号,不满足的不用处理,默认就是FALSE!
函数详解
IF函数详细教程:函初 | 没有灰色地带-我是IF!
ROW函数详解教程:简单谈谈不简单的ROW和COLUMN两兄弟!
本文由“壹伴编辑器”提供技术支持
有了行号,那么获取对应的数据就很简单的,INDEX函数专门干这事的,下面我们就来看一下如何使用!
03 |  INDEX+SMALL+ROW 提取数据
=INDEX($J:$J,SMALL(IF(ISNUMBER(FIND($C$2,$J$5:$J$15)),ROW($J$5:$J$15)),ROW(A1)))
解析说明
1、乍一看,新手可能就懵了!但是请不用担心,没那么复杂!
在第二步中,我们得到的满足条件有多个,我们不能一次性处理,所以我们要想办法,一个一个拿出来,那么逐个提取,可以使用SMALL(从小到大)或者LARGE(从大到小)
2、提取出数字之后,我们想要获取对应行的值,就必须借助INDEX
INDEX(单列,行号)就可以获取指定列对应行的内容!本题就是如何!
但是我们不仅仅想要一列,还需要多列怎么办?那也是INDEX的活
INDEX(区域,行,列):获取交叉点的内容!
函数详解
SMALL函数详解教程:函数 | 一锅炖可大可小的那几个函数
INDEX函数相关教程:Excel中最强查询组合-INDEX+MATCH!
本文由“壹伴编辑器”提供技术支持
有了上面的几篇辅助文章的铺垫,那么最后的组合函数即可搞定
04 | MATCH辅助-多列随意抽取
=INDEX($J:$Q,SMALL(IF(ISNUMBER(FIND($C$2,$J$5:$J$15)),ROW($J$5:$J$15)),ROW(A1)),MATCH(B$4,$J$4:$T$4,))
看完最强查询组合,应该对这种就非常了解了!可以根据需要的列标题匹配!
解析说明
1、核心是 INDEX(区域,行,列)获取区域在行列交叉点的值!
2、行部分我们前3部分已经说明的非常详细,列的部分主要是通过MATCH这个查找函数来处理,MATCH(查找内容,区域,0)返回查找内容在指定区域首次出现的位置进而确定INDEX的列!
函数详解
MATCH函数专题讲解:函数 | MATCH给查找引用类函数注入灵魂
本文由“壹伴编辑器”提供技术支持
以上我们基本完成了关键词的查找,但是我们会发现如果下拉超过了包含满足条件的函数就会报错,此时我们就需要容错处理,就是IFERROR的场地了!
05 | IFERROR容错处理
我就最终公式了!你学会了,还是学废了!
=IFERROR(INDEX($J:$Q,SMALL(IF(ISNUMBER(FIND($C$2,$J$5:$J$15)),ROW($J$5:$J$15)),ROW(A1)),MATCH(B$4,$J$4:$T$4,)),"")
本文由“壹伴编辑器”提供技术支持
如果还是看不懂,只能看视频了,目前对应的视频发布在头条上!
http://dwz.date/byBs
本文由“壹伴编辑器”提供技术支持
(0)

相关推荐