
这是勤勤的第 156期分享
作者| 勤勤
来源| 勤勤(微信号:TianTian_CaiGuan)
2026年勤勤180篇原创计划 第106篇
欢迎监督,一起见证,每一篇都会用心分享
你好,我是勤勤,在跨境电商财务这行干了12年,从小会计做到财务负责人,带过50多位学员。
最近,一个学员来问我一个问题:
“勤勤老师,我知道VLOOKUP很好用,但每次都得把查找值放在第一列,太麻烦了。有没有更灵活的函数?”
我说:“有,XLOOKUP。它是Excel近年来推出的新函数,专治VLOOKUP的各种痛点,不需要查找值在第一列,可以向左查、向右查、向上查,还能轻松处理一对多匹配。”
今天,我就用跨境电商真实的业务场景,给你彻底讲明白XLOOKUP,保证你看完就能用,而且会用之后就不想再用VLOOKUP了。
X代表任意方向,LOOKUP就是查找。 连起来就是,任意方向查找。
简单点说,你想知道某个订单的发货日期、客户实付金额、物流单号……不管你要找的信息在查找值的左边还是右边,XLOOKUP都能帮你一次性搞定。
就像在亚马逊后台,你输入一个订单号,不管这个订单号在表格的第几列,XLOOKUP都能把它对应的信息找出来。
XLOOKUP的公式长这样:
=XLOOKUP(查找值, 查找列, 返回列, [找不到时显示什么])
我拆开给你看,和VLOOKUP对比一下,你就知道XLOOKUP有多方便了。
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
以上我们可以知道,VLOOKUP要求查找值必须在第一列,就像排队必须站第一个;XLOOKUP不限制,你站哪里都行,我都能找到你。
场景一:用订单号匹配发货明细
你有一份销售订单表(表1),里面有订单号和商品名称。
现在想知道每个订单的发货日期,这些信息在发货明细表(表2)里。
但表2的订单号在B列,发货日期在A列,订单号在右边,发货日期在左边。
用VLOOKUP做不到。因为VLOOKUP要求查找值在第一列,但订单号在B列。
用XLOOKUP轻松搞定。
表1:销售订单表
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
表2:发货明细表
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
怎么写公式?
在表1的C2单元格输入:
=XLOOKUP(A2, 表2!B:B, 表2!A:A, “未找到”)
Excel是怎么算的?
拿着表1A2单元格的“ORD-001”,去表2的B列(订单号列)里找“ORD-001”,找到了在第1行,返回对应的A列(发货日期):2026-06-01,如果找不到,就显示“未找到”
结果:C2单元格显示“2026-06-01”
看明白了吗?XLOOKUP不要求查找值在第一列,直接指定查找列和返回列就行,非常灵活。
01
找不到数据时,显示友好的提示
你匹配退货订单时,有些订单在销售表里找不到。
用VLOOKUP显示#N/A,丑且不友好。
用XLOOKUP,=XLOOKUP(A2, 表2!A:A, 表2!C:C, “该订单未找到,请核实”)
这样,找不到时会显示中文提示,老板和运营一看就懂,不用问你这个“#N/A”是什么意思。
02
查找值和查找列的格式必须一致
常见错误情形,比如表1的订单号是文本“ORD-001”,表2的订单号是数字“1”,导致匹配不上
比如表1的订单号是“ORD-001”,表2的订单号是“ORD-001 ”多了空格,也匹配不上
怎么办?针对格式不一致的解决方案是全选两列,设置成统一格式(文本)
针对有空格的解决方案是用TRIM函数去掉多余空格:=TRIM(A2)
XLOOKUP函数,是新时代VLOOKUP的完美替代品。
它解决了VLOOKUP最让人头疼的几个问题,不能再向左查找、不能直接选返回列、找不到数据时显示难看的#N/A。
如果你还在用VLOOKUP,试试切换到XLOOKUP吧,用过之后,你真的不会想回去。不到10秒钟,结果就出来了。
这就是函数的魅力,用技术解放你的时间,让你去做更有价值的事。
我是勤勤,如果你在做跨境电商财务的工作中,Excel用得还不够顺手;欢迎链接我,深入了解我的实战带教计划。
欢迎点赞、转发、在看给我鼓励

