三个月前我们学了VLOOKUP——四个参数,找什么、在哪找、取第几列、怎么找。
用到现在,你应该踩过三个坑:
数列数
:取第几列要手数,插一列就全错
只能往右查
:要查的列必须在查找列右边,否则公式报错
找不到要套IFERROR
:IFERROR(VLOOKUP(...), "没找到"),括号套括号
XLOOKUP把这三个坑全填了。
=XLOOKUP(找什么, 在哪找, 返回什么)就三个,第四个以后都是可选的,不填也行。
不用数列数了。查找列选一列,返回列选一列,完事。
还是VLOOKUP那篇的场景——用员工ID查部门:
=VLOOKUP(A2, 表B!A:B, 2, 0)换成XLOOKUP:
=XLOOKUP(A2, 表B!A:A, 表B!B:B)逐个拆:
不用数"第2列"了,B列就是B列,插多少列都不影响。
VLOOKUP写2,意思是"区域里第2列"。中间插一列,2就变成错的。
XLOOKUP直接选返回列表B!B:B——你选的就是你要的,跟位置无关。
VLOOKUP有个死规矩:返回列必须在查找列右边。
想用姓名查ID?姓名在B列,ID在A列——VLOOKUP做不到,得把列换个位置。
XLOOKUP?随便:
=XLOOKUP(A2, 表B!B:B, 表B!A:A)查找列在右、返回列在左,照样查。
VLOOKUP找不到会返回#N/A,得套一层IFERROR:
=IFERROR(VLOOKUP(A2, 表B!A:B, 2, 0), "没找到")XLOOKUP自带第四参数:
=XLOOKUP(A2, 表B!A:A, 表B!B:B,"没找到")
找不到直接显示"没找到",不用套娃。
一句话:能用XLOOKUP就用XLOOKUP,不能用的老版本再用VLOOKUP。
XLOOKUP本质就是SQL的JOIN:
SELECT b.部门FROM表A a JOIN 表B b ON a.员工ID = b.员工ID;
SQL从来不用"数第几列"——你要哪个字段就SELECT哪个。
XLOOKUP终于让Excel也做到了这一点。
XLOOKUP仅限Excel 2019及以上 / Office 365可用。
如果你用的是老版本Excel或WPS旧版——VLOOKUP还得继续用,毕竟它全版本通吃。
不是VLOOKUP不好,是XLOOKUP更先进。就像手机有新款了,老款还能用。
周三学INDEX+MATCH——比XLOOKUP更老的万能查找组合,三个函数叠一起,老版本也能用。
你现在用的是VLOOKUP还是XLOOKUP?如果还没换,是什么原因?评论区聊聊。
点个赞,下次查找不踩坑 👍