excel如何模糊匹配?


微软函数窗口明确Range_lookup为0时值=FLASE,下方提示为大致匹配, 而在这里又告知0为精确查找?

哪到底0是代表精确还是近似匹配呢?  又或者窗口函数理解的角度不对?  欢迎大神们反馈?

注: WPS窗口函数和公式位置的提示均统一,即0代表FAlSE(精确匹配), 1代表TRUE(近似匹配)


一、模糊匹配还是部分匹配

通过两个示例来说明部分匹配和模糊匹配是什么意思。
示例1.按照简称匹配全称所对应的业务人员姓名,可以使用公式=VLOOKUP(“*”&D2&”*”,A:B,2,0)完成,如图所示。

在第一参数D2的两边连接了通配符,表示从A列找到包含D2内容的数据后,返回B列对应的姓名。查找内容必须是连续的字符,如果是间断的则无法返回正确结果,例如D8单元格中的数据就不能得到正确结果。

示例2.根据销售额确定业务员的等级,一共分为五个等级,使用IF函数完成等级的确定会比较繁琐,可以使用公式=VLOOKUP(N3,$J$3:$K$7,2,1)来确定等级,如图所示。

在这个公式中,第四参数用了1,也就是模糊匹配。需要注意的是,公式中的范围是以J列(分级下限)为首列的,并且下限值按升序排列。查找值N列(销售额)中的每个值都不在查找区域的首列,但是却能得到正确的结果,这种查找方式就是模糊匹配。

提示:通过这两个例子理解部分匹配和模糊匹配的区别,以及这两种匹配方式的要点。

1.部分匹配使用的精确匹配方式,查找值两边连接通配符,并且查找值必须是连续存在的字符;

2.模糊匹配必须保证查找区域首列是升序排列,如果涉及到数字区间则以数字区间的下限作为首列内容。

二、模糊匹配原来是这个意思

要了解模糊匹配和精确匹配的区别,就要知道数据匹配的两种计算原理:遍历法与二分法。

精确匹配使用的是遍历法原理,对数据源的顺序没有要求,会从数据源的第一个值开始与查找值进行比较,如果不同则继续向下,直到发现一致的数据,则返回所需的结果,查找任务结束,其原理如图所示。

黑色箭头为第一轮的查找过程,橙色箭头为第二轮的查找过程,每个姓名都要从头找一遍。

遍历法的准确性无疑是很高的,但是查找效率相对较低,当数据量比较多的时候运算就会比较费时间。

模糊匹配使用的是二分法原理,二分法原理很重要的一点是默认数据源升序排列,默认的意思就是不管数据实际是以何种方式排列,都会认为是升序的。每次会和数据源中间位置的数据比较大小,如果查找值较大,则向下继续找中间位置的数据去比较,直到找到目标值,反之则向上查找,对于非数字内容的大小,可以参考升序排序的排列去判断。

在按照销售额确定等级的时候,就用到了模糊匹配,如图所示。

以7633这个数字为例,查找范围中共有五个值,中间位置(第三个值)是7000,7633大于7000,所以向下查找,这样一次就排除了一半的数据。

当数据为偶数时,中间位置为数据个数/2,7000下面只有两个数,因此和第一个数(9000)进行比较,7633小于9000,最终结果就是9000上面一行的值对应的等级。

如果数据不是升序排序,那么结果很有可能都是错误的,如图所示。

同样的公式,只是数据源排序方式不同,结果完全变样了。还是以7633为例,首先和7000比较,向下找,比5000大,则得到5000下面一行的数据。

由此可知,模糊匹配的本质并不是比较数据是否一致,而是按照数据之间的大小关系进行判断,每一次都是和中间位置的数据进行比较,这样一次就能排除一半的数据。假如有1000个数据需要比较,使用精确匹配就需要比较1000次,而模糊匹配只需要比较10次(2的10次方=1024)。

提示:对于二分法原理不必深究,理解要点即可。

1.数据源要求升序排列;

2.查找速度高于精确匹配;

3.进行多重判断时可以取代IF函数的嵌套。

  Excel表格是我们在办公中不可缺少的好帮手,它功能强大,能帮助我们处理很多繁杂的数据,提高我们的工作效率。那么,有时候,我们会在Excel表格中遇到这样的情况,如果能以简称或关键字匹配查找全称,将会节省你很多的时间,使你办公更方便。

  今天,我就来教大家如何用简称或关键字模糊匹配查找全称的方法。这节课非常有价值哦,感兴趣的小伙伴赶紧来收藏一下吧!

  1、首先,我们需要打开电脑上的Excel软件。接着,我们在表格中为大家举例说明。大家可以看到表格中的B1、B2、B3为公司全称,D1为公司简称。(注:这些公司均为虚构的公司,并不存在)

  2、接着,我们选中E1单元格,在公式【工具栏】中点击【插入函数】的按钮。(如图所示)

  3、接着,我们在【插入函数】的方框中,查找【LOOKUP】函数,并选中LOOKUP函数。如果实在不记得函数的名称,我们可以在下方找到函数的解释说明。

  4、接着,我们输入和单元格中相同的公式,计算结果为全称,点击【确定】即可。(注意:LOOKUP函数是从单行或单列或数组中查找一个值)

  这样一来,我们在Excel表格中的迷糊查找就完成了,你们学会了吗?以上步骤写的很清楚,小白同学也能很轻松的完成哦!那么,今天就先到这里了,再见吧!

我要回帖

更多关于 如何批量模糊匹配 的文章

 

随机推荐