神奇!Office 2019 突破限制,XLOOKUP 函数轻松用起来

哈喽,大家好呀!这是我在头条创作的第2429天,今天来给大家讲讲 Excel 里超厉害的 XLOOKUP 函数,学会它,能让你在处理数据时效率翻倍,轻松准时下班哦!如果不支持也有办法!

先给大家说下 XLOOKUP 函数的语法,其实很简单,就像我们平常找人找东西一样。公式是这样的:=XLOOKUP(找什么, 在哪里找, 返回什么, 找不到咋办, 怎么找, 从哪开始找)

来解释一下每个参数啥意思哈。

找什么:就是你要在表格里找的东西呀,比如说订单号、姓名之类的。

在哪里找:指定在表格的哪一列去找你要找的东西。

返回什么:就是找到你要找的东西后,你想从隔壁拿什么数据出来。

找不到咋办(可选):要是没找到你要找的东西,你想让它显示 “无” 呢,还是留空,或者你也可以让它显示其他你指定的内容。

怎么找(默认精确找):就是问问你是想精确地找到那个东西呢,还是差不多就行。一般我们都用精确找,不过有时候模糊找也很有用哦。

从哪开始找(一般不用):就是说从表格的前面开始找还是从后面开始找,这个参数平时用得不多。

记住哦,比起 VLOOKUP 函数,XLOOKUP 能让你少踩 80% 的坑呢!

比如说我们想知道工号 1003 的人在哪个部门,就可以用这个公式:=XLOOKUP(A2, $A$2:$A$5, $C$2:$C$5)。这样就能直接返回 “财务部” 啦。和 VLOOKUP 比起来,用 XLOOKUP 就不用去数要返回的部门在第几列,直接指哪打哪,是不是超方便?

要是我们想从另一个表中查找技术部的年度预算,也很简单哦。公式是这样的:=XLOOKUP(C2, 部门预算表!$A$2:$A$4, 部门预算表!$B$2:$B$4),然后就能得到 500 万啦。用 XLOOKUP 跨表查找就是这么轻松,再也不用头疼 VLOOKUP 跨表时复杂的设置了。

有时候我们可能会找一些不存在于表格里的人,这时候 XLOOKUP 也能帮我们处理得很好哦。比如我们输入=XLOOKUP("马三", $B$2:$B$5, $A$2:$A$5, "查无此人"),因为表格里没有马三这个人,所以就会返回我们设置好的查无此人,而不是像 VLOOKUP 那样报错,是不是很贴心?

如果我们想一次性查到某个人的工资和入职年份,XLOOKUP 也能轻松搞定(使用VBA的无法实现,得使用多公式,小编就是Office2019,哭晕在厕所)。VBA版本公式=XLOOKUP(A2,$A$2:$A$5,$D$2:$D$5)&XLOOKUP(A2,$A$2:$A$5,$E$2:$E$5),正常XLOOKUP公式:=XLOOKUP(A2,$A$2:$A$5,$D$2:$E$5),就能同时返回 “12000” 和 “2021”,分别是工号 1002 的人的工资和入职年份。用 VLOOKUP 要实现这个功能可没这么简单呢,得写好几个公式才行。

用 XLOOKUP 函数的时候,也有一些小地方要注意哦,不然可能会出错。

不要手写区域:选择区域的时候,最好用鼠标框选,这样更保险,能避免像把 A2:A5 写成 A2:A4 这样的错误。

数字 VS 文本:工号 1001 和 “1001” 在 Excel 里可是两回事哦,如果你的数据格式不一致,可能会导致查找不到结果。这时候可以用&""来转换一下格式。

多结果处理:要是遇到有多个结果需要处理的情况,得按 Ctrl + Shift + Enter 变成数组公式,这样才能得到正确的结果。

如果Excel不支持XLOOKUP怎么办?

可以使用 VBA 宏来实现类似 XLOOKUP 的一些功能,但也很难做到完全一致的效果和全面的功能覆盖。用 VBA 宏实现类似 XLOOKUP 精确查找功能。

1.打开 Excel 2019,按下 Alt + F11 进入 VBA 编辑器

2.在 VBA 编辑器中,单机鼠标右键,插入一个新的模块(在菜单栏选择 插入-> 模块)。

3.在模块中输入以下 VBA 代码:

Function XLOOKUP(lookup_value As Variant, lookup_array As Range, return_array As Range, Optional if_not_found As Variant = CVErr(xlErrNA)) As Variant
    Dim i As Long
    For i = 1 To lookup_array.Rows.Count
        If lookup_array.Cells(i, 1).Value = lookup_value Then
            XLOOKUP = return_array.Cells(i, 1).Value
            Exit Function
        End If
    Next i
    XLOOKUP = if_not_found
End Function

4.然后关闭 VBA 编辑器回到 Excel 工作表界面,然后你就可以在单元格中使用这个自定义函数 XLOOKUP 了,比如:=XLOOKUP(A1, B:B, C:C, "未找到"),这里的参数意义和 XLOOKUP 类似,只是功能相对简单,仅实现了精确查找且没有排序等复杂的处理逻辑。

对于更复杂的模糊查找、多列返回等 XLOOKUP 函数的高级功能,需要更复杂的 VBA 代码编写来实现,而且仍然不能完全等同于原生的 XLOOKUP 函数使用体验。

好啦,以上就是 XLOOKUP 函数的一些神操作啦!学会了它,在 Excel 里查找数据就变得超级简单,不管是向左找、跨表找、找不到显示特定内容,还是同时查多列、模糊找范围,它都能轻松应对。而且还能帮我们避免 VLOOKUP 函数的很多坑,简直是打工人的办公神器呀!大家赶紧用起来吧,让自己的工作效率飞起来!

#办公技巧##excel技巧##职场excel小技巧##每天学一点实用excel##vba##函数##Excel函数公式#

原文链接:,转发请注明来源!