在Excel中经常会使用到模糊查找,比如下图所示的案例,要根据公司的简称,查询公司的代码,这个就属于模糊查询,实现方法很简单。

第一种方法:lookup+find

公式为:=LOOKUP(1,0/FIND(E2,$A$2:$A$10),$B$2:$B$10)
FIND(E2,$A$2:$A$10),我们先来讲解下公式中的find部分,find函数的语法为FIND(要查找的字符串,字符串),然后返回索引(也就是在查找值在字符串的位置)
比如find("爱","我爱你"),返回值为2。如果找不到值,返回VALUE!。
我们可以使用F9查看公式,看FIND(E2,$A$2:$A$10)的返回值,可以看到结果为:

可以看到,查找到值的位置返回了3,其它位置都是错误值,0/3=0,而0/value!这个错误值返回的还是value!,只有0和1最接近,所以就返回了它对应的行,这也是lookup函数的特性。
学习更多的函数知识,可以查看Excel函数进阶与提升,讲解了许多的函数用法。
第二种方法:VLOOKUP+通配符

公式: =VLOOKUP("*"&E2&"*",$A$2:$B$10,2,FALSE)
其中*为通配符,代表0到任意多个字符,什么意思呢,比如“*我*”,可以是“我”,也可以是“我你”,也可以是“他我你”,总之,只要包含“我”就可以了。
"*"&E2&"*"被用&连接符连接了起来,&专门用来连接字符串。
$A$2:$B$10,就是查询区域,为了公式向下填充,所以使用了绝对引用,如果给单元格前加上$符号呢,可以用shift+3,也可以选定按F4切换引用方式
2,表示查询结果在第二列,最后一个参数false表示精确匹配。
以上就是Excel中模糊查询的两个通用方法,用那种方式更好呢,我觉得都差不多,大家可以参照自己对函数的掌握情况量力而行。
