XLOOKUP函数支持精确匹配、通配符模糊匹配、反向查找及多条件联合匹配,语法为=XLOOKUP(查找值,查找数组,返回数组,[未找到],[匹配模式],[搜索模式]),默认精确匹配,灵活高效。

如果您在Excel中需要根据特定条件查找并返回对应的数据,XLOOKUP函数提供了比VLOOKUP更灵活、更直观的匹配方式。以下是XLOOKUP函数匹配数据的具体用法:
一、基础语法与参数说明
XLOOKUP函数通过在指定数组中搜索查找值,定位到匹配项后返回对应位置的结果值。它支持精确匹配、近似匹配、反向查找和多条件查找等能力,且默认为精确匹配,无需额外设置匹配模式。
1、XLOOKUP函数的基本结构为:=XLOOKUP(查找值, 查找数组, 返回数组, [如果未找到], [匹配模式], [搜索模式])
2、查找值:要搜索的目标内容,可以是单元格引用或具体数值/文本。
3、查找数组:用于比对查找值的一维区域或数组,必须与返回数组长度一致。
4、返回数组:与查找数组一一对应的值区域,查找到位置后从此区域取值返回。
5、[如果未找到]:可选参数,当未匹配到结果时显示的自定义提示,如“未找到”。
6、[匹配模式]:可选参数,0表示精确匹配(默认),-1表示精确匹配或下一个较小项,1表示精确匹配或下一个较大项,2表示通配符匹配。
7、[搜索模式]:可选参数,1表示从首开始正向搜索(默认),-1表示从末尾开始反向搜索。
二、精确匹配单列数据
该方法适用于在标准列表中查找唯一标识(如员工编号、产品ID)并返回其对应属性(如姓名、价格)。XLOOKUP自动启用精确匹配,无需设定匹配模式参数。
1、在目标单元格输入公式:=XLOOKUP(E2,A2:A100,B2:B100,"未找到")
2、其中E2为待查的编号,A2:A100为编号列,B2:B100为姓名列,“未找到”为未命中时的提示文本。
3、按Enter确认,结果即刻显示对应姓名。
4、将公式向下填充,即可批量匹配整列数据。
三、使用通配符进行模糊匹配
当查找值不完整或存在部分已知信息(如仅知产品名称前缀)时,可通过设置匹配模式为2启用通配符功能,支持*(任意字符)、?(单个字符)等符号。
1、确保查找值中已包含通配符,例如在F2单元格输入“笔记本*”。
2、输入公式:=XLOOKUP(F2,A2:A100,B2:B100,"未找到",2)
3、第5个参数2代表启用通配符匹配模式,函数将匹配以“笔记本”开头的所有条目。
4、若多个匹配项存在,XLOOKUP默认返回第一个符合条件的结果。
四、反向查找(从右向左)
传统VLOOKUP无法直接实现从右列查找左列数据,而XLOOKUP天然支持此操作,只需调换查找数组与返回数组的位置即可完成反向检索。
1、假设D列是姓名,C列是工号,需根据姓名查工号,则查找数组为D2:D100,返回数组为C2:C100。
2、输入公式:=XLOOKUP(G2,D2:D100,C2:C100,"未找到")
3、G2为待查姓名,公式将扫描D列找到匹配项,并返回同一行C列的工号。
4、无需调整表格结构或辅助列,操作简洁可靠。
五、多条件联合匹配
借助数组运算,XLOOKUP可实现类似SUMIFS的多条件定位效果。原理是构造逻辑判断数组作为查找数组,使仅满足全部条件的位置返回TRUE,其余为FALSE,再配合TRUE/FALSE查找实现精准定位。
1、假设有部门列(E2:E100)、岗位列(F2:F100)、薪资列(G2:G100),需根据部门“销售部”与岗位“主管”查薪资。
2、输入公式:=XLOOKUP(1,(E2:E100="销售部")*(F2:F100="主管"),G2:G100,"未找到")
3、(E2:E100="销售部")*(F2:F100="主管")生成由0和1组成的内存数组,仅同时满足两项条件的行对应值为1。
4、XLOOKUP以1为查找值,在该逻辑数组中定位首个1的位置,并返回G列对应行的薪资值。










