XLOOKUP函数入门教程:告别VLOOKUP,新一代查找神器来了

各位效率小本本的读者们,大家好!今天要给大家安利一个Excel 效率工具界的\"新晋网红\"------XLOOKUP函数。

如果你是职场小白,每天跟Excel表格打交道,一定对VLOOKUP不陌生。它是很多人的\"入门函数\",帮我们从一大堆数据里找出想要的信息。但是,用过办公效率工具的人都懂那种痛:查找列必须在最左边、想从右往左查根本做不到、数第几列数到眼瞎、找不到数据就甩一个#N/A给你......

别愁了!今天的主角XLOOKUP,就是来解决这些痛点的。它被称为\"VLOOKUP的升级版\",功能更强大,用法更简单,学会了它,你会发现原来查找数据可以这么爽!

一、XLOOKUP语法详解:6个参数一次搞懂

先给大家看一下XLOOKUP的完整长啥样:

=XLOOKUP(查找值, 查找区域, 返回区域, 找不到值, 匹配模式, 搜索模式)

{width="5.208333333333333in" height="2.9166666666666665in"}

看着有6个参数有点吓人?别怕,后面3个都是可以省略的,真正常用的就前3个。下面我一个一个给大家掰碎了讲,每个参数\"是什么、填什么、能不能省\"都说清楚。

第1个参数:查找值(必填)

填什么:这就是你要\"找谁\"。比如你想查\"张三\"的工资,那\"张三\"就是查找值。可以是具体的文字、数字,也可以是一个单元格引用。

能省略吗:比如A10,或者\"张三\",或者1001都行。

不能,这是必填的。

第2个参数:查找区域(必填)

填什么:你要在哪一列(或哪一行)里找这个值。比如你要在A列的姓名列表里找\"张三\",那查找区域就是A2:A100。

能省略吗:一列或一行的数据范围,比如A2:A100。

划重点:不能,必填。

查找区域只能是一行或一列,不能选多列多行哦!

第3个参数:返回区域(必填)

填什么:找到之后,你想返回哪一列(或哪一行)的数据。比如找到\"张三\"后,你想返回他对应的工资,那返回区域就是C2:C100。

能省略吗:和查找区域对应的一列或一行,比如C2:C100。

划重点:不能,必填。

返回区域的大小要和查找区域一致,行数或列数要对上。

第4个参数:找不到值(可选)

填什么:如果查找值在查找区域里不存在,你想让它返回什么?默认情况下会返回#N/A错误,但你可以自定义,比如让它显示\"无数据\"、\"未找到\"、0或者空值。

能省略吗:比如\"无数据\",或者0,或者\"\"(空文本)。

划重点:可以,省略就返回#N/A。

这是VLOOKUP没有的功能!以前要容错还得嵌套IFERROR,现在一个参数搞定。

第5个参数:匹配模式(可选)

你想要什么样的匹配方式?有4种选择:

0:精确匹配(默认),找不到就返回错误

-1:精确匹配,找不到就返回下一个更小的值

1:精确匹配,找不到就返回下一个更大的值

2:通配符匹配

填什么:一般填0就够用了。

能省略吗:可以,省略默认是0(精确匹配)。

第6个参数:搜索模式(可选)

搜索的方向和方式,也有4种:

1:从上到下搜索(默认)

-1:从下到上搜索(反向搜索,找最后一个匹配项)

2:二进制升序搜索(需要排序)

-2:二进制降序搜索(需要排序)

填什么:一般用默认的1就行。

能省略吗:可以,省略默认是1。

好了,6个参数讲完了。是不是发现其实常用的就前3个?后面3个是\"进阶选项\",新手先记住前3个就能用起来了。

二、XLOOKUP vs VLOOKUP:三大优势碾压式对比

可能有人会问:我VLOOKUP用得好好的,为啥要学新的?别急,看完下面这3个对比,你马上就想换。

{width="5.208333333333333in" height="2.9166666666666665in"}

优势一:双向查找,想怎么查就怎么查

VLOOKUP最让人头疼的一点:只能从左往右查。也就是说,你要找的内容必须在查找区域的最左列。如果想从右往左查?不好意思,做不到,得用INDEX+MATCH组合。

XLOOKUP就不一样了!查找区域和返回区域是分开的两个参数,你想查哪列就查哪列,想返回哪列就返回哪列,左查右、右查左、上查下、下查上,通通没问题!

举个例子:A列是姓名,B列是工号。用VLOOKUP你只能\"根据姓名查工号\",要想\"根据工号查姓名\"就做不到。但用XLOOKUP,把查找区域设为B列,返回区域设为A列,分分钟搞定反向查找。

优势二:不用数第几列,告别\"数数眼瞎症\"

用VLOOKUP的人,都有过这种经历:写公式的时候,要数返回列是第几列------\"1、2、3......第7列,填7\"。列少还好,列多的时候数着数着就数错了,改一次列顺序又得数一遍,太麻烦了!

XLOOKUP呢?直接选返回区域就行,不用管它在第几列。你想返回哪列就选哪列,插入列、删除列都不影响,再也不用当\"数数工具人\"。

优势三:容错处理更简单,一个参数搞定

VLOOKUP找不到数据的时候,只会冷冰冰地扔一个#N/A给你。要想让它显示\"无数据\",你还得套一层IFERROR函数,写出来老长老长了。

XLOOKUP就贴心多了!第4个参数直接填你想显示的内容,比如\"无数据\"、\"未找到\",不用嵌套任何函数,简单明了。

三、5个实战案例:拿来就能用

光说不练假把式,下面给大家准备了5个最常用的场景,每个都有数据示例和公式写法,照着抄就行!

{width="5.208333333333333in" height="2.9166666666666665in"}

先给大家一张基础数据表,后面的案例都用它:


A列(姓名) B列(部门) C列(工资) 张三 财务部 8000 李四 人事部 7500 王五 运营部 9000 赵六 技术部 12000 孙七 运营部 8500


数据范围是A2:C6(第1行是表头)。

案例1:基础查找------根据姓名查工资

需求:这是最基础的用法,相当于VLOOKUP的常规操作。

公式写法:查找\"王五\"的工资

=XLOOKUP(\"王五\", A2:A6, C2:C6)

结果:9000

解释一下:查找值是\"王五\";查找区域是A2:A6(姓名列);返回区域是C2:C6(工资列);后面3个参数省略,默认精确匹配、从上到下搜索。

就这么简单!3个参数搞定,是不是比VLOOKUP清爽多了?

案例2:反向查找------根据工资查姓名

需求:这个是VLOOKUP做不到的,XLOOKUP轻轻松松。

公式写法:查找工资是9000的人是谁

=XLOOKUP(9000, C2:C6, A2:A6)

结果:王五

看到没?查找区域换成了C列(工资列),返回区域换成了A列(姓名列),就这么简单!从右往左查,so easy!

案例3:找不到返回\"无数据\"------容错处理

需求:查找一个不存在的值,让它友好显示,而不是报错。

公式写法:查找\"周八\"的工资,找不到就显示\"无数据\"

=XLOOKUP(\"周八\", A2:A6, C2:C6, \"无数据\")

结果:无数据

注意:第4个参数填了你想显示的内容。如果是文本要加双引号,数字就直接写。

对比一下VLOOKUP的写法:=IFERROR(VLOOKUP(\"周八\",A:C,3,0),\"无数据\"),XLOOKUP是不是简洁多了?

案例4:近似匹配------查找区间对应值

这个场景在算提成、算税率、算等级的时候特别常用。先准备一张工资等级表:


E列(最低工资) F列(等级) 0 初级 6000 中级 9000 高级 12000 资深


需求:工资8500对应什么等级?

=XLOOKUP(8500, E2:E5, F2:F5, , -1)

结果:中级

解释一下:第4个参数空着(两个逗号之间什么都不写),用默认的#N/A;第5个参数填-1,表示找不到就返回下一个更小的值;8500在E列找不到,但比它小的最近值是6000,对应的等级是\"中级\"。

划重点:用近似匹配的时候,查找区域的数据要从小到大排好序哦!

案例5:多条件查找------两个条件一起查

需求:有时候一个条件不够,需要两个甚至多个条件同时匹配。还是用前面的员工表,假设公司里有重名的,需要\"姓名+部门\"一起查。

公式写法:查找运营部的\"王五\"的工资

=XLOOKUP(\"王五\"&\"运营部\", A2:A6&B2:B6, C2:C6, \"无数据\")

原理:用&符号把两个查找值拼在一起,同时把两个查找区域也拼在一起,就实现了多条件查找。

如果是3个条件就拼3个,以此类推。这个技巧VLOOKUP也能用,但XLOOKUP写起来更清晰。

四、常见问题解答

学习新东西总会有疑问,这里整理了大家最常问的几个问题。

Q1:我的Excel里没有XLOOKUP怎么办?

这是最多人问的问题。XLOOKUP是比较新的函数,不是所有版本都支持:Excel 365 / Excel 2021及以上版本支持,Excel 2019及更早版本不支持,WPS最新版支持。

如果你的版本不支持,也不用太焦虑,可以用INDEX+MATCH组合来替代,功能是一样的,就是写起来麻烦一点。当然,如果能升级到新版本,体验会好很多。

Q2:XLOOKUP能完全替代VLOOKUP吗?

基本上可以。XLOOKUP能做到所有VLOOKUP能做的事,还能做到很多VLOOKUP做不到的事。对于新手来说,我甚至建议直接学XLOOKUP,不用再从VLOOKUP学起了。

当然,考虑到有些老表格、老版本Excel还用VLOOKUP,了解一下VLOOKUP的基本用法也没坏处,但重点放在XLOOKUP上就好。

Q3:XLOOKUP和INDEX+MATCH哪个好?

功能上两者差不多,都能实现双向查找、多条件查找。但XLOOKUP有几个优势:写法更简单,一个函数搞定,不用嵌套两个;容错更方便,自带\"找不到值\"参数;搜索模式更多,支持从下往上搜、二进制搜索;可读性更强,一眼就能看懂每个参数是干啥的。

所以,如果你的Excel支持XLOOKUP,优先用XLOOKUP就行。

Q4:XLOOKUP查找不到返回#N/A怎么办?

有两种情况:确实没有匹配的数据,这是正常的,说明你要找的内容不在查找区域里。如果不想显示#N/A,就用第4个参数自定义返回内容,比如填\"无数据\"、\"未找到\"。

明明有数据却找不到,这就要排查原因了,常见的有:查找值和查找区域里的内容看起来一样,但实际有空格;一个是文本格式,一个是数字格式;查找区域选的范围不对,数据没包含进去;大小写敏感的问题(默认不区分大小写)。

遇到#N/A先别慌,一步一步排查,大多数情况都是数据格式的问题。

五、总结一下

好了,今天的XLOOKUP入门教程就到这里,最后给大家划个重点:

1. 记住基本语法:=XLOOKUP(找谁, 在哪找, 返回啥, 找不到咋办, 怎么匹配, 怎么搜)

2. 三大核心优势:双向查找、不用数列数、自带容错

3. 新手先掌握前3个参数,后面3个慢慢学

4. 5个常用场景:基础查找、反向查找、容错查找、近似匹配、多条件查找

给新手的学习建议:别光看,动手练!打开Excel,随便输几行数据,把今天的5个案例都敲一遍;从简单的开始,先用好前3个参数,再慢慢解锁进阶用法;遇到报错别害怕,#N/A是最好的老师,排查的过程就是进步的过程。

XLOOKUP这个函数,说难不难,说简单也不简单。入门很快,但要玩得溜还需要多练习。相信我,一旦你用习惯了,就再也回不去VLOOKUP了。

作者:沈未迟
来源说明:本文首发于微信公众号「效率小本本」,经整理优化后发布于 DevToolHub。

沈未迟 · 独立开发者
DevToolHub 站长,专注于在线工具开发与效率提升。联系邮箱:[email protected]