分享

你不得不知道的VLOOKUP函数近似查找

 ForSheet 2020-03-27

 身处职场却不懂Vlookup,如同堆起来的蛋,随时都有塌下打碎的可能。”    ForSheet如是说

VLOOKUP函数非常重要,毫不夸张的说,有人凭借这一个函数在公司里混了一年又一年,平时主要工作就是开Excel用VLOOKUP。

VLOOKUP函数一共有四个参数,=VLOOKUP (查找值,查找范围,返回的列序号,查找类型)

查找类型分为精确查找还是近似查找,区别主要在于:

  精确查找主要是根据文本去查找完全相等的内容。举例:根据姓名查找手机号,根据订单查找产品名称,根据产品查找价格,根据身份证号查找姓名。查找依据大多是文本,并且需要完全相等。VLOOKUP精确查找的最后一个参数用FALSE,也可以用0。

    近似查找主要还用于根据数值返回不同数值区间,举例:根据业绩去匹配对应奖金,根据分数值去匹配对应的成绩等级。VLOOKUP近似查找的最后一个参数用TRUE,也可以用1,还可以省略。(近似查找也可以用于文本查找,比如根据姓名找拼音,但即使按文本查找也是进行大小的比较。)

      有关精确查找可以参考小编写的上一篇文章, 本次举例来说明VLOOKUP的近似查找。

01

Vlookup近似查找

如下表格,E列需要显示对应的等级,大于等于90,显示为“优”,大于等于80,显示为“良”,大于等于60,显示为“中”,否则为“差”。

这不是IF函数干的活吗?

E2的公式可以这样写:

=IF(D2>=90,"优",IF(D2>=80,"良",IF(D2>=60,"中","差"))) 

但如果等级一多,公式就有点长了。

这时候可以用VLOOKUP来代替IF。

=VLOOKUP(D2,A2:B5,2,1) 足矣。

当然也可以用LOOKUP或其他方法,本文主要讨论VLOOKUP大致查找。

如果使用精确查找,公式=VLOOKUP(D2,A2:B5,2,TRUE)这样写,89在查找范围中A2:B5根本不存在,将会显示出错信息#N/A。

改为=VLOOKUP(D2,A2:B5,2,TRUE)就对了。

因为查找89并不是查A2:B5中是否存在89分,而是查89分是哪一个档次之间,是0-59,60-79,80-89,90分以上,这种查找就是近似查找。

公式 =VLOOKUP(D2,A2:B5,2,TRUE)

偷个懒,将TRUE用1代替  =VLOOKUP(D2,A2:B5,2,1)

再偷个懒,1也省略掉。=VLOOKUP(D2,A2:B5,2)。

这三个公式结果相同,你都要能看懂。

02

注意事项

1.查找范围中的第一列数值要由小到大排序

   如下表格,A列分界线,应该0,60,80,90由小到大排序。

2.数值区间应该在查找范围中第一列

      如下表格,分界线在B列,等级在A列,不方便VLOOKUP查找。

3.第一列的数值区间需要规范设计

 如下表格,分界线不应该如此设计表格,不方便公式函数中比较大小。

4.公式向下填充,查找范围需要绝对引用

       公式未使用绝对引用,直接向下填充将出错。

将公式中的查找范围改成绝对引用,再向下填充

= VLOOKUP(D2,$A$2:$B$5,2,1)。

子曰:用之则行,不用则藏。

意思是说,如果你用我的这些建议,就马上行动,知行合一,如果你不用,就赶紧收藏,以绝后患。

    转藏 分享 献花(0

    0条评论

    发表

    请遵守用户 评论公约

    类似文章 更多