老同学表格定制专家WPS / Excel 公式助手

XLOOKUP

查找类

XLOOKUP 可向左或向右查找,默认精确匹配,并支持未找到提示、通配符和正向或反向搜索,是 VLOOKUP 的现代替代方案。

基本语法
=XLOOKUP(查找值, 查找区域, 返回区域, [未找到值], [匹配模式], [搜索模式])

参数怎么填

必填 3 个 · 选填 3 个
#参数要求怎么理解 / 怎么填
1查找值必填要查找的内容,可以是编号、名称、日期或单元格引用。
2查找区域必填用于寻找查找值的那一列或那一行。
3返回区域必填找到匹配项后,需要返回结果的区域。
4未找到值选填找不到匹配项时显示的备用内容;例如“未找到”或空白。
5匹配模式选填控制匹配时是否区分大小写、是否按通配符或正则等方式判断。
6搜索模式选填控制负数等特殊情况的取整方式。-1代表从下往上查找

① 找到数据区域

先确认条件列和结果列在哪,注意固定区域加 $

② 按顺序填参数

依次填 查找值、查找区域、返回区域

③ 回车并向下填充

双击填充柄,整列公式自动套用

跟着案例练 7 次

点击公式右侧可复制,换成你的单元格就能用
CASE 1

基础精确查找

★★★要求:根据员工编号查询姓名
fx公式示例
=XLOOKUP("E003",$D$8:$D$13,$E$8:$E$13)
练习题公式(E003)
=XLOOKUP(F17,$D$8:$D$13,$E$8:$E$13)

解释:XLOOKUP 默认使用精确匹配,不需要额外填写 FALSE。

CASE 2

向左反向查找

★★★要求:根据姓名向左返回员工编号
fx公式示例
=XLOOKUP("钱七",$E$8:$E$13,$D$8:$D$13)
练习题公式(钱七)
=XLOOKUP(F25,$E$8:$E$13,$D$8:$D$13)

解释:查找区域和返回区域相互独立,因此可以直接从右侧姓名列向左返回编号。

CASE 3

自定义未找到提示

★★★要求:查询不存在的编号时显示“未找到”
fx公式示例
=XLOOKUP("E999",$D$8:$D$13,$E$8:$E$13,"未找到")
练习题公式(E999)
=XLOOKUP(F33,$D$8:$D$13,$E$8:$E$13,"未找到")

解释:第四参数可以直接设置未找到提示,不需要再嵌套 IFERROR。

CASE 4

一次返回多列

★★★要求:同时返回姓名、部门和城市
fx公式示例
=XLOOKUP("E003",$D$8:$D$13,$E$8:$G$13,"未找到")
练习题公式(E003)
=XLOOKUP(F41,$D$8:$D$13,$E$8:$G$13,"未找到")

解释:返回区域可以包含多列,动态数组会把对应记录一次性向右溢出。

CASE 5

多条件查找

★★★要求:按部门和城市共同查找员工姓名
fx公式示例
=XLOOKUP(1,($F$8:$F$13="技术部")*($G$8:$G$13="深圳"),$E$8:$E$13,"未找到")

解释:两个条件同时成立时乘积为1,XLOOKUP 查找1即可返回对应记录。

CASE 6

通配符模糊查找

★★★要求:查找姓名中包含“七”的员工部门
fx公式示例
=XLOOKUP("*七*",$E$8:$E$13,$F$8:$F$13,"未找到",2)
练习题公式(*七*)
=XLOOKUP(F57,$E$8:$E$13,$F$8:$F$13,"未找到",2)

解释:第 5 个参数写 2 时,XLOOKUP 会启用通配符匹配。公式中的星号 * 代表任意多个字符,所以可以查找姓名中包含“七”的记录。

CASE 7

反向搜索最后一条

★★★要求:返回技术部最后一名员工的姓名
fx公式示例
=XLOOKUP("技术部",$F$8:$F$13,$E$8:$E$13,"未找到",0,-1)
练习题公式(技术部)
=XLOOKUP(F65,$F$8:$F$13,$E$8:$E$13,"未找到",0,-1)

解释:搜索模式-1会从下向上查找,因此可以返回最后一次出现的匹配记录。

模拟数据|员工信息表

上面案例里的 员工编号、姓名 等列,就来自这张表

把这张表放进工作台
行员工编号姓名部门城市月薪绩效等级
8E001张三技术部北京15,000A
9E002李四市场部上海18,000B
10E003王五技术部深圳22,000A
11E004赵六财务部广州12,000C
12E005钱七市场部杭州10,000B
13E006孙八技术部北京28,000A