专栏名称: 秋叶Excel
和秋叶一起学Excel,免费获取Excel模板大全、插件合集!还有Excel真人视频、图文教程,助你轻松掌握Excel函数、图表、透视表……一起成为办公效率达人!
目录
相关文章推荐
Linux就该这么学  ·  微软 WSL 2 将在未来支持 Arch ... ·  10 小时前  
Linux就该这么学  ·  OpenAI 放大招:宣布免费开放 ... ·  10 小时前  
马靖昊说会计  ·  货币资金造假:胆大包天的财务“魔术” ·  2 天前  
Linux就该这么学  ·  不为人知的隐蔽通道:隐藏的网络 ·  2 天前  
佰赞咨询  ·  华为财务如何工作 ·  3 天前  
佰赞咨询  ·  华为财务如何工作 ·  3 天前  
51好读  ›  专栏  ›  秋叶Excel

39岁的VLOOKUP要光荣退休了?这个新函数好用到爆哭!!

秋叶Excel  · 公众号  ·  · 2024-05-16 11:03

正文

本文作者: 竺兰
本文编辑:卫星酱


在 Excel 的世界里,一说起查找和匹配数据,你是不是就想到了 Vlookup?


不过,随着时间的流逝,微软和 WPS 相继开发出了新的查找函数—— Xlookup


只是将字母从 V 变成了 X,功能却强大了好几倍!



接下来,我们先了解一下「什么是 Xlookup?」,再通过 6 个常见的需求 ,看看 Xlookup 函数到底厉害在哪儿~


PS.Xlookup 函数仅在 Excel 365 和 WPS 中可用。文末可下载本文配套练习文件!

普通查找



Vlookup 我们都再熟悉不过啦,主要就是查询匹配数据。


Xlookup 的用法也是一样滴,But 它还可以看做是 Lookup 家族的合体版 !!


Lookup 家族:Vlookup、Hlookup、Lookup、Index、Match。 可见合体版有多强大……)


举个栗子!


这里我们要根据「姓名」,查询每个人的「在职状态」。



用 Xlookup 来实现,简单的很~


在 I3 单元格中输入公式:

=XLOOKUP(H3,$B$3:$B$7,$D$3:$D$7)


=XLOOKUP(要查找的值,查找的区域,返回的区域)


对应上图一起来看,是不是很好理解。


Xlookup 函数的优势就在于,在确定要查找的区域、返回的区域时,我们可以 直接选中一整列 ,比如这里就选中了 B 列、D 列数据~


这样公式只需 3 个参数就搞定啦!



But 用 Vlookup,我们需要写 4 个参数……


而且!要一次性选中整个区域,再来挨个数数,看返回的区域在整个区域中排第几位……


公式如下:

=VLOOKUP(H3,$B$3:$D$7,3,0)


解释一下就是:


=VLOOKUP(要查找的数值,查找的区域,查找返回列,查找模式)



这样一比较,你是不是发现 Xlookup 函数在普通查找中表现更优秀?


工作太忙,想学点技能提高办公效率,强烈推荐 《秋叶 Excel 3 天集训营》 ,原价 99 元, 今天免费加入!


秋叶 Excel 3 天集训营

原价 99

现在 仅需 0 元


报名即送

100 套 Excel 模板

35 个常用函数说明

赶紧扫码加入吧!

👇👇👇

多条件查找



写到这里隔壁小 E 跑过来吐槽:


切,不就是少了一个参数,值得把 Xlookup 吹上天吗?你个喜新厌旧的坏人!



那我们再来看一个案例,还是根据「姓名」,查询「在职状态」。



但是……眼神好的同学一定发现啦,数据中有两个同名的「小叶」,直接查找一定会出错!


所以,要 同时根据「部门」和「姓名」 ,来查找在职状态~


先用 Xlookup 函数,把公式写出来给你们看:



什么意思呢?思路是这样的:


❶ 把查询结果中,「部门 H 列」和「姓名 I 列」合并,一起作为「要查找的值」:


=XLOOKUP(H3&I3


❷ 选择「查找区域」时,也把「部门 A 列」和「姓名 B 列」合并起来查找:


=XLOOKUP(H3&I3,$A$3:$A$11&$B$3:$B$11


❸ 最后,选择「返回的区域」为:


=XLOOKUP(H3&I3,$A$3:$A$11&$B$3:$B$11,$D$3:$D$11)


我们会发现,Xlookup 函数居然可以 直接用&符号,把列合并起来! 这也太方便了吧!



但同样的思路,用 Vlookup 就复杂了……


光说这公式,我就先晕辽:

=VLOOKUP(H3&I3,IF({1,0},$A$3:$A$11&$B$3:$B$11,$D$3:$D$11),2,0)

参数 1,用&符号,把部门和姓名合并在了一起。


参数 2,用 IF 函数,构建查找列$A$3:$A$11&$B$3:$B$11 和返回列$D$3:$D$11。


参数 3,返回第 2 列。


参数 4,精确查找。



参数 2 的写法,实在是看不懂啊。这里还构建了一个动态区域:


IF({1,0},$A$3:$A$11&$B$3:$B$11,$D$3:$D$11)


这段公式相当于构建了下面的数据:



看不明白吧?看不明白就对了!


这不就说明了,Xlookup 更好用嘛!


未找到值



当我们在查找一个不存在的值,表格通常会返回一个错误乱码。


这时,在 Xlookup 中,可以添加一个较为特殊的参数[未找到值],它的作用是在我们 查找不存在的值时,能够返回指定内容


来看看这个案例,查询「萌萌」所在的「入职日期」。



用 Xlookup 函数查询很简单,公式如下:


=XLOOKUP(H3,B3:B11,E3:E11)


但是结果……是这样滴……



这说明公司里并没有这名员工,所以入职日期才会显示#N/A。


如果我们在[未找到值]填入一个信息,比如「查无此人」 (需要用英文双引号框起来) ,那么单元格就会显示设定好的内容:



而 Vlookup,不用说,它并没有这样的功能。


反向查找



前面 3 个案例,相信大家已经感受到 Xlookup 的简单、好用了,但是离上天,还差点儿。


再来看这个需求,要根据「姓名」查询「部门」。



非常简单嘛,和按「姓名」查找「在职状态」没两样啊?!


咱先不说 Xlookup,没有对比就没有伤害,先看 Vlookup。


用过 Vlookup 同学都知道,它有一个通病:只能从左往右查找。


也就是说这里需要「姓名」在左边,「部门」在右边,才方便查找。


而表格中「部门」在左边,所以查找起来会很麻烦。


公式如下:

=VLOOKUP(H3,IF({1,0},$B$3:$B$11,$A$3:$A$11),2,0)


我天,又是 IF({1,0})的方法,再见。



再看 Xlookup,一如既往地简单优雅:


=XLOOKUP(H3,$B$3:$B$11,$A$3:$A$11)



Xlookup 在选择时,只需要 分别选择查找列和返回列 就行,所以根本不存在左右的问题~



再说了,这里查找「小叶」的部门时,因为有两个小叶 (重名)


而 Vlookup 默认只能查找到第 1 条记录,也就是「生产部」。


如果我想查找在「客服部」的「小叶」,要怎么写呢?


给 Xlookup 加个参数「0,-1」就可以了:


=XLOOKUP(H3,$B$3:$B$11,$A$3:$A$11,,0,-1)



「0,-1」这个参数并不难,来解释一下:


0 表示匹配模式为精确匹配。


-1 表示从下往上查找;如果输入 1,表示从上往下查找;输入 2,表示升序排序的二进制文件搜索;输入-2:表示降序排序的二进制文件搜索。(后两种搜索模式一般不用)


所以填写 -1,就能找到最下面位于「客服部」的「小叶」~


Excel 函数教程看不懂、学不会,你需要专业讲师带你学习!


快来 《秋叶 Excel 3 天集训营》 ,不仅有老师教学,还有助教耐心答疑,遇到问题再也不用担心百度半天找不到答案~


秋叶 Excel 3 天集训营

原价 99

现在 仅需 0 元


报名即送

100 套 Excel 模板

35 个常用函数说明

赶紧扫码加入吧!

👇👇👇

一对多查找



现在我们要根据姓名,把员工的全部信息都查找出来,共计 4 列,所以返回值也有 4 个。


如果用 Vlookup 函数,为了解决返回列变化的问题,需要结合 Column 函数来写公式。


=VLOOKUP($H3,$B$3:$F$11,COLUMN(B1),0)



公式填写好之后,向右拖动填充即可。


但……如果你不会 Column 函数,解决这个问题最好的方法,就是赶紧关掉 Excel,眼不见为净。



在这个问题上,Xlookup 的处理方式会更高级。


简简单单一个公式就搞定:


=XLOOKUP(H3,$B$3:$B$11,$C$3:$F$11)



奥秘就在第 3 个参数「$C$3:$F$11」上。


参数 3,选择返回列的时候,把所有需要返回的列,一次性都选上。


聪明的 Xlookup 同学,会 根据返回列的列数 自动填充相邻的数据列 ~


高效又简单,大家快给我夸夸!

模糊查找



这里我们要根据 F 列的「绩效」,算出 H 列的「绩效评比」结果。







请到「今天看啥」查看全文