xlookup函数支持精确/近似/通配符匹配、反向横向查找及多列返回,语法为=xlookup(查找值,查找数组,返回数组,[未找到提示],[匹配模式]),无需固定列序,容错性强且操作灵活。

一、XLOOKUP函数基础用法
XLOOKUP函数用于在指定数组中查找目标值,并返回对应位置的另一数组中的结果。它不依赖表格结构,仅需明确查找列与返回列即可完成匹配,避免了传统查找函数对列序和区域完整性的严格要求。
1、选中目标单元格,输入等号(=)启动公式编辑。
2、键入 =XLOOKUP(查找值, 查找数组, 返回数组)
3、将“查找值”替换为具体单元格引用(如F2)或文本字符串(如"中国")。
4、将“查找数组”替换为包含待查数据的一维区域(如A2:A100)。
5、将“返回数组”替换为与查找数组行数一致的对应结果区域(如C2:C100)。
6、按Enter确认,函数即刻返回首个匹配项对应的结果值。
二、处理未匹配情况的容错写法
当查找值在查找数组中不存在时,XLOOKUP默认返回#N/A错误;添加[if_not_found]参数可自定义提示信息,提升报表可读性与用户友好度。
1、在基础三参数后添加英文逗号,输入第四个参数。
2、键入 "未找到" 或 0 等任意文本/数值作为替代输出。
3、完整公式示例:=XLOOKUP(F2,A2:A10,C2:C10,"未找到")
4、该参数为可选,但建议始终显式设置以规避意外错误显示。
三、实现近似匹配与通配符查找
通过设置[match_mode]参数,XLOOKUP可突破精确匹配限制,支持区间查找或模糊文本匹配,适用于税率表、等级评定等业务场景。
1、在公式末尾添加第五个参数,设定匹配逻辑:
2、使用 -1 表示完全匹配,未找到则返回下一个较小项(查找数组须降序排列)。
3、使用 1 表示完全匹配,未找到则返回下一个较大项(查找数组须升序排列)。
4、使用 2 启用通配符:*代表任意字符、?代表单个字符、~用于转义。
5、示例(通配符):=XLOOKUP("张*",B2:B10,A2:A10,,2) 可匹配“张三”“张伟”等姓名。
四、执行反向与横向查找
VLOOKUP无法直接从右列查左列或跨行检索,而XLOOKUP通过自由指定查找与返回数组方向,天然支持反向与横向定位,无需辅助列或嵌套函数。
1、反向查找(如根据姓名查ID):确保查找数组为姓名列(如B2:B10),返回数组为ID列(如A2:A10)。
2、横向查找(如根据季度查销售额):将查找数组设为首行(如C1:F1),返回数组设为对应数据行(如C2:F2)。
3、公式示例(横向):=XLOOKUP("Qtr2",C1:F1,C2:F2)
4、公式示例(反向):=XLOOKUP("李四",B2:B10,A2:A10)
五、一次性返回多列结果
传统VLOOKUP每列需单独写公式,而XLOOKUP的return_array可为多列区域,一次计算即可输出整行关联数据,显著减少公式数量与维护成本。
1、选中目标区域的起始单元格(如H2),确保右侧有足够空白列容纳结果。
2、输入公式,将return_array设为包含多列的矩形区域(如B2:D10)。
3、键入 =XLOOKUP(G2,A2:A10,B2:D10)
4、按Enter后,Excel自动溢出至相邻列,分别填入B列、C列、D列对应值。
5、返回结果为动态数组,若源数据更新,所有关联单元格同步刷新。











