模糊匹配查询

导   言

大家好,继续我们的VLOOKUP函数系列课程。

VLOOKUP函数是Excel中极其重要的一个函数。

在上一讲中,我们系统学习了VLOOKUP函数的语法结构及其参数代表的意义。

语法结构:VLOOKUP(lookup_value,table_array,col_index_num,range_lookup)

参数含义:第1个参数为查找值,代表根据什么查找,第2个参数是查找区域,代表从哪里查找,第3个参数是返回查找区域第几列的值,第4个参数是判断精确查找还是模糊查找。

如果对于语法结构和参数掌握得还不够扎实的小伙伴,可以复习下昨天的课程。

VLOOKUP函数简明教程,终于有人把4个参数都讲清楚了

对于精确匹配,大家已经比较熟悉了。

那什么是模糊匹配呢?模糊匹配能解决什么问题呢?

今天就带大家学习一下VLOOKUP模糊匹配的使用。

— 1—

模糊匹配

不同于精确匹配只能查找与查找值完全相同的数据,模糊匹配可以把等于或接近查找值的数据作为自己的查询结果。在很多情景下,模糊匹配可以用于代替IF函数的多层嵌套,来解决条件判断问题。

我们来看这么个案例:根据成绩判定等级标准。

IF嵌套

比较常规的解决方法是采用IF函数进行条件判断,如果分数符合某个要求,就是相应的等级。我们来写下使用IF函数的公式:

=IF(B5<90,"不及格",IF(AND(B5>=90,B5<115),"及格",IF(AND(B5>=115,B5<135),"良好","优秀")))

仅仅是括号就有好几层,使用了多层嵌套,执行了多次判断,再加上AND函数才能搞定

你能保证你一次性就能写对这个函数吗?

我们很容易发现,当判断条件较多时,会为函数书写、阅读以及理解带来麻烦。

有没有更好的办法来解决这个问题呢?

通过VLOOKUP函数的模糊匹配就可以轻松解决。

解决原理:

模糊匹配下

将小于或等于查找值的最大值作为查询结果

关键:等级表的编制(查找区域的构建)

要求:

· 升序排列(从小到大);

· 每段数值区域对应的等级,取这段数值区域的下限值来对应。

我们来看下具体操作。

— 2—

成绩等级判定

1、编写等级对应表

再强调一遍原则:从小到大;每段数值区域对应的等级,取这段数值区域的下限值来对应,比如优秀等次的下限值是135,良好等次的下限值是115,及格等次的下限值是90,不及格等次的下限值是0。

编写结果如下:

成绩等级表

新编写的等级表就是VLOOKUP函数的第2个参数,查找区域

2、写VLOOKUP函数,计算等级

=VLOOKUP(B2,$J$2:$K$5,2,1)

要查找的值就是数学成绩所在的单元格,编写的等级表即为数据区域,等级信息在编写的等级表的第2列,模糊匹配用1或TRUE。

公式

我们来看下结果,如果分数是83,那查找到的就是小于或等于83的最大值所对应的等级结果,即0对应的等级“不及格”。如果分数是123,那查找到的就是小于或等于83的最大值所对应的等级结果,即115对应的等级“良好”。

和正确的结果完全一样!!!

下面我们再来看一个案例。

— 3—

提成比例计算

第1步仍然是编写提成等级表

重复一遍:从小到大;每段数值区域对应的等级,取这段数值区域的下限值来对应。

提成等级表

第2步:写VLOOKUP函数,计算提成比例

=VLOOKUP(B2,$K$2:$L$7,2,1)

要查找的值就是销售收入所在的单元格,编写的等级表即为数据区域,提成比例在编写的等级表的第2列,模糊匹配用1或TRUE。

公式

— 4—

操作演示

等级判定

提成比例

今天的内容就到这里了,大家都掌握了吗?

赶快练习一下吧!

---END---

(0)

相关推荐