http://www.pptjcw.com

excel函数教程:XLOOKUP函数经典用法总结

    HI,大家好,我是星光。

    今天给大家分享的Excel函数是XLOOKUP,例先说一下它的基本语法。它有六个参数,成功超越大哥大OFFSET,成为参数最多的函数之一。

    =XLOOKUP(查找值,查找范围,结果范围,[容错值],[匹配方式],[查询模式])

    参数看起来很多,不过只有前三个是必须的,后面均可省略。

    下面我们举12个例子+两道练习题,由易入难、从简到繁、从入门到进阶,让大家对XLOOKUP的作用和运算方式有一个全面的了解。

    ……

    1)单条件查询

    如下图所示,B:D列是数据明细,需要根据F列姓名查询相关电话号码。

    excel函数教程:XLOOKUP函数经典用法总结

    公式如下:

    G2输入公式▼

    =XLOOKUP(F2,B:B,D:D)

    F2是查找值,B列是查找范围,D列是结果范围,公式的意思也就是在B列查找F2,找到后返回D列对应的结果。

    2)容错查询

    如下图所示,B:D列是数据明细,需要根据F列姓名查询相关电话号码,但和上一个案例所不同的是,如果查无结果,需要返回指定值:查无结果。

    excel函数教程:XLOOKUP函数经典用法总结

    公式如下:

    G2输入公式▼

    =XLOOKUP(F2,B:B,D:D,"查无")

    XLOOKUP的第4参数可以指定容错值,当查无结果时避免返回错误值#N/A,省去了外围再嵌套一个IFERROR函数。

    3)模糊条件查询

    如下图所示,A:B列是数据明细,需要根据F列姓名的简称查询相关特长。这是一个模糊查询的示例,比如查找星光,对应的结果为看见星光。

    excel函数教程:XLOOKUP函数经典用法总结

    公式如下:

    E2输入公式▼

    =XLOOKUP("*"&D2&"*",A:A,B:B,"查无",2)

    XLOOKUP的查找值是”*”&D2&”*”,*是通配符,可以代替0到多个字符串,”*”&D2&”*”也就指包含D2的字符串。

    但和VLOOKUP所不同的是,XLOOKUP默认不支持通配符匹配,只有将第5参数设置为常数2时,才支持通配符匹配。

    XLOOKUP的第5参数可以指定匹配方式,包含了精确匹配、区间匹配以及通配符匹配等。

    excel函数教程:XLOOKUP函数经典用法总结

    4)区间查询

    如下图所示,F:G列是评分标准,60以下不及格,80以下及格等,需要根据该评分标准,对C列的成绩计算评级。

    excel函数教程:XLOOKUP函数经典用法总结

    公式如下:

    D2输入公式▼

    =XLOOKUP(C2,$F$2:$F$5,$G$2:$G$5,"",-1)

    XLOOKUP第5参数为-1,指定了匹配方式是’精确匹配或下一个较小的项’,比如查找84,找不到精确匹配,则寻找比它小的项,也就是80,然后取其对应结果:’良好’。

    这儿的XLOOKUP等同于LOOKUP函数▼

    =LOOKUP(C2,F:G)

    但和LOOKUP所不同的是,XLOOKUP函数不要求查找区域首列数据升序排列,即便把F:G列的数据打乱了,也不妨碍它寻找’精确匹配或下一个较小的项’的计算规则▼

    excel函数教程:XLOOKUP函数经典用法总结

    除此之外,XLOOKUP还支持’精确匹配或下一个较大的项’的计算规则▼

    =XLOOKUP(C2,$F$2:$F$5,$G$2:$G$5,"",1)

    第5参数指定值为1,比如查找80,找不到精确匹配,则寻找比它大的项,也就是90。

    5)查询符合条件的最后一个结果

    如下图所示,A:C列是数据明细,其中日期字段升序排列。需要根据E列姓名查询相关销售额,但和前面案例所不同的是,它需要查找每个人最后一次销售额,也就是符合条件的最后一条记录。

    excel函数教程:XLOOKUP函数经典用法总结

    公式如下:

    F2输入公式▼

    =XLOOKUP(E2,B:B,C:C,"查无",0,-1)

    XLOOKUP的第6参数可以指定查询方式,默认是从前往后找~找到即止;此外也可以从后往前找~找到即止;如果数据源有排序,还可以执行二分法查找。

    excel函数教程:XLOOKUP函数经典用法总结

    本例是寻找符合查询条件的最后一条记录,需要从后往前找~找到即止,也就是将第6参数设置为-1。

    6)二分法查询

    如下图所示,A:C列是数据源,其中姓名列有升序排序,现在需要根据E列姓名查询相关电话号码。

    excel函数教程:XLOOKUP函数经典用法总结

    公式如下:

    F2输入公式▼

    =XLOOKUP(E2,A:A,C:C,"查无",0,2)

    第6参数指定值为2,查找方式是升序排序情况下的二分法查找。

    excel函数教程:XLOOKUP函数经典用法总结

    这里也可以使用公式:

    =XLOOKUP(E2,A:A,C:C,"查无")

    两者相比有何不同呢?

    主要是查询方式的区别。后者是从前往后找,虽然说找到即止,但效率也不是很高。后者是二分法查找,效率非常高。

    提示:如果您觉得本文不错,请点击分享给您的好友!谢谢

    上一篇:excel函数公式大全:Excel算年龄,这些公式会不会? 下一篇:33个Excel一句话技巧!

    郑重声明:本文版权归原作者所有,转载文章仅为传播更多信息之目的,如作者信息标记有误,请第一时间联系我们修改或删除,多谢。