Excel中的近似查询,三种方法够不够?

各位表亲周末好啊,今天老祝和大家说说Excel中的近似查询问题。
话说某单位组织员工考核,最后需要根据考核分数进行评定。
判断规则是:
考核分数在0~59的,不合格。
60~79的,是合格。
80~89的,是优秀。
90及以上的,是良好。
对于这种情况,咱们要首先建立一个分数和等级的对照表:
发现这个对照表的规律了吗?
分数是从小到大排列的,首列中的分数就是等级标准的起始值,也就是达到这个分数或是超过这个分数了,就是对应的等级。
在这个例子中,就要用到近似匹配了。
接下来,咱们看看用哪些方法能实现。
INDEX+MATCH
先来说INDEX+MATCH的用法,这是一对查找应用的天生绝配,MATCH函数负责找出位置,INDEX函数负责根据这个位置找到对应的值,话不多说,看公式:
=INDEX(F$3:F$6,MATCH(B2,E$3:E$6))
MATCH函数省略第三参数,表示在E3:E6这个区域中查找小于或等于B2单元格(75)的最大值。
在E3:E6这个区域中,没有75这个值,她就找到所有几个弟弟当中最大的一个弟弟,也就是60。
MATCH函数说了:既然找不到你哥,我也不能空着手走啊,就拿你顶包吧!然后就返回60在E3:E6这个区域中的位置2,INDEX函数根据这个位置返回F3:F6单元格中对应的值。
注意这里有一个前提啊:查询区域首列的值必须以升序排序,否则就乱了方寸了。
VLOOKUP
VLOOKUP也是重量级的查找引用函数,出镜率那是相当的高,有江湖的地方,就有VLOOKUP。
=VLOOKUP(B2,E$3:F$6,2)
VLOOKUP函数的几个参数大家都记得吧:
第一个是要找谁
第二个参数是在哪儿找
第三个参数是返回第几列的值
第四个参数是精确的找还是近似的找。
在这里,VLOOKUP函数第四参数省略掉了,默认执行的是近似的匹配方式,VLOOKUP函数说了:既然没有小尾巴跟踪,我就不较真儿了,差不多得了。
查找时,返回精确匹配值或近似匹配值。如果找不到精确匹配值,则返回小于查找值的最大值,也是在找几个弟弟中最大的那个弟弟。
LOOKUP
LOOKUP函数可是简单而不简约,手起刀落之处,必是哀鸿遍野。
=LOOKUP(B2,E$3:F$6)
LOOKUP函数第一参数是查询值,第二参数是查询区域,在查询一个具体的值时,如果找不到这个查询值,则会与查询区域中所有小于查询值的最大值进行匹配。匹配方式仍然是找不到本主时,就拿几个弟弟中的大弟弟顶包。
这里第二参数是一个两列的区域,LOOKUP函数很聪明的从这个区域中的首列,找到大弟弟的位置,并且返回这个区域最后一列对应位置的值。
条条大路通罗马,近似匹配的查询,用几个函数都能实现。
但是注意哦,在近似匹配时,必须是要将查询区域的首列从小到大排序的,否则的话,得到的结果有可能就不正确啦。
好了,今天咱们的分享就是这些吧,祝各位一天好心情!
图文制作:祝洪忠
(0)

相关推荐