XLOOKUP是Excel 365/2021中替代VLOOKUP的增强型查找函数,支持左右双向、上下搜索、精确/近似匹配、多结果返回及多条件查询,语法简洁且不易出错。

XLOOKUP 是 Excel 365 和 Excel 2021 中推出的全新查找函数,比 VLOOKUP 更灵活、更直观,能轻松实现**从左向右、从右向左、上下双向、精确匹配、近似匹配、甚至返回多个结果**的查询,彻底解决 VLOOKUP 的诸多限制(比如不能向左查、必须固定列号、不支持数组返回等)。
一、XLOOKUP 基本语法与核心参数
公式结构简洁明了:
=XLOOKUP(查找值, 查找数组, 返回数组, [未找到时返回], [匹配模式], [搜索模式])
- 查找值:要找的内容,如 A2 单元格的姓名
- 查找数组:在哪个区域里找?必须是一行或一列(如 B2:B100)
- 返回数组:找到后返回哪一列/行的数据?大小需与查找数组一致(如 D2:D100 或 F1:J1)
- [未找到时返回]:可选,找不到时显示自定义提示,如“未查到”
- [匹配模式]:0=精确匹配(默认),-1=精确匹配或下一个较小项,1=精确匹配或下一个较大项
- [搜索模式]:1=从上到下/从左到右(默认),-1=从下到上/从右到左(实现“最后一个匹配”)
二、用 XLOOKUP 替代 VLOOKUP 的常见场景
✅ 向左查询(VLOOKUP 做不到)
例如:已知“工号”在 E 列,想查对应的“姓名”(在 C 列):
=XLOOKUP(H2,E2:E100,C2:C100,"未找到")
→ 不用调整数据顺序,也不用辅助列,直接反向定位。
✅ 多条件查询(配合数组运算)
例如:查“部门=销售”且“职级=主管”的员工姓名:
=XLOOKUP(1,(B2:B100="销售")*(C2:C100="主管"),A2:A100,"未找到")
→ 利用逻辑判断生成 TRUE/FALSE 数组,乘号转为 1/0,再用 XLOOKUP 找第一个 1 的位置。
✅ 返回整行/整列数据(VLOOKUP 只能单列)
例如:根据订单号查该订单全部信息(D2:G2 对应4个字段):
=XLOOKUP(I2,A2:A100,D2:G100)
→ 自动返回 D2:G2 这一行的四个值(作为动态数组,会自动溢出到右侧单元格)。
三、实用技巧与避坑提醒
- 查找数组和返回数组的**行数或列数必须一致**,否则报错 #N/A
- 查找值为空时,XLOOKUP 默认匹配空值;若想忽略空值,可在查找数组中加筛选,如 FILTER(B2:B100,B2:B100"")
- 用 搜索模式 -1 可查“最后一次出现”,适合查最新记录:
=XLOOKUP(F2,A2:A100,B2:B100,,0,-1) - 支持通配符(* ?)但需开启通配符匹配:
=XLOOKUP("张*",B2:B100,C2:C100,,2)(匹配模式设为 2)
四、为什么推荐优先用 XLOOKUP 而不是 VLOOKUP
- VLOOKUP 插入列易出错(列号写死),XLOOKUP 引用区域清晰,不怕增删列
- VLOOKUP 向左查要靠 INDEX+MATCH 组合,XLOOKUP 一步到位
- XLOOKUP 默认精确匹配,VLOOKUP 默认近似匹配(易误结果)
- 错误处理更友好:直接用第4参数写提示,不用套 IFERROR










