XLOOKUP 语法
了解查找值、查找数组和返回数组参数
XLOOKUP 语法 是 CoddyKit 上的免费 Excel Formulas Academy 课时。 这是第 1 节课,共 4 节。 你可以在下方免费阅读本课时的完整内容 — 然后在浏览器中使用内置代码编辑器和全天候 AI 导师进行实践。 这是 Excel Formulas Academy 学习路径的一部分,你的进度在网页和 CoddyKit 应用中同步。 Excel Formulas Academy 课程共包含 4 节课。
认识 XLOOKUP
XLOOKUP 是 VLOOKUP 和 HLOOKUP 的现代替代函数。它会在一列(或一行)中查找一个值,并从另一列(或另一行)返回匹配的值。
它最大的优势是:您可以使用两个独立的范围,分别指定在哪里搜索和返回什么。无需计算列数,也不必担心答案位于哪一侧。
XLOOKUP 可用于 Excel 365、Excel 2021 和 Google 表格。
三个核心参数
最简单的 XLOOKUP 只需要三项信息:
- 查找值 - 您要搜索的内容
- 查找数组 - 用于搜索的范围
- 返回数组 - 用于提取答案的范围
可以这样理解这个公式:在这一列中查找这个值,并从该列返回匹配的项目。
=XLOOKUP(lookup_value, lookup_array, return_array)首个完整示例
假设有一个产品列表。A 列存放产品名称,B 列存放价格。您想查找 "键盘" 的价格。
您在 A2:A20 中搜索名称,并从 B2:B20 返回价格。XLOOKUP 会扫描查找数组,找到 "键盘",然后返回返回数组中同一行的内容。
=XLOOKUP("Keyboard", A2:A20, B2:B20)引用单元格而不是文本
将 "键盘" 直接写入公式并不稳妥。更好的做法是让查找值指向一个单元格。
如果用户在 D2 中输入产品名称,那么当用户修改名称时,您的公式会自动响应。实时查找工具和仪表板就是这样工作的。
=XLOOKUP(D2, A2:A20, B2:B20)查找范围和返回范围必须对齐
查找数组和返回数组应具有相同的高度(行数相同)。XLOOKUP 会逐行将它们匹配起来。
如果 A2:A20 有 19 行,返回数组也必须有 19 行。范围大小不一致会产生 #VALUE! 错误,因为 XLOOKUP 无法正确配对这些行。
=XLOOKUP(D2, A2:A20, B2:B20)从不同的列返回结果
返回数组不必紧邻查找数组。假设名称位于 A 列,而您想要的是 E 列中的库存数量。
只需将返回数组指向 E2:E20 即可。与按向右方向计算列数的 VLOOKUP 不同,XLOOKUP 不在意列之间是否存在间隔。
=XLOOKUP(D2, A2:A20, E2:E20)默认使用精确匹配
XLOOKUP 最方便的一点是,它默认查找精确匹配。
VLOOKUP 默认使用近似匹配;如果用户忘记最后的 FALSE,就会悄无声息地返回错误答案。XLOOKUP 则相反:除非您有意要求其他匹配方式,否则它会返回精确匹配。
=XLOOKUP(D2, A2:A20, B2:B20)跨行查找
XLOOKUP 同样可以处理横向数据。如果月份名称横向排列在第 1 行,销售额位于第 2 行,您就可以搜索这一行,而不是搜索某一列。
公式结构完全相同:查找值、月份所在行以及销售额所在行。一个函数即可替代 VLOOKUP 和 HLOOKUP。
=XLOOKUP("Mar", B1:M1, B2:M2)在其他公式中使用它
由于 XLOOKUP 会返回一个值,您可以直接将它放入计算中。
例如,将查找到的单价乘以 E2 中的数量。查找会先执行并返回价格,然后乘法运算使用这个结果。这样可以让您的工作表更加紧凑、易读。
=XLOOKUP(D2, A2:A20, B2:B20) * E2整列引用
您可以使用 A:A 和 B:B 这样的整列引用,让公式在新增行后仍能继续运行。
这种方式很方便,但在非常大的工作表中,速度可能会略慢。对于整洁的数据,引用准确范围或使用 Excel 表格是一个好习惯。
=XLOOKUP(D2, A:A, B:B)XLOOKUP 的优势
与 VLOOKUP 相比,XLOOKUP 具有以下特点:
- 不受方向限制 - 返回列可以位于查找列的左侧或右侧
- 更安全 - 默认使用精确匹配
- 更稳定 - 插入列不会使公式失效
- 更简单 - 无需计算列索引
掌握三个核心参数后,大多数日常查找都会变得轻松自如。
=XLOOKUP(D2, A2:A20, B2:B20)快速检查
测试您对 XLOOKUP 基本语法的理解。
总结:XLOOKUP 基础
您已经学习了 XLOOKUP 的三个核心参数:
- 查找值 - 要查找的内容
- 查找数组 - 搜索的位置
- 返回数组 - 要返回的内容
它默认使用精确匹配,返回范围可以位于任意位置,并且既适用于列也适用于行。接下来,您将学习如何妥善处理未找到的值。
=XLOOKUP(D2, A2:A20, B2:B20)常见问题解答
「XLOOKUP 语法」课时是免费的吗?
是的 — 「XLOOKUP 语法」的完整文本可在网页上免费阅读。要进行交互式练习(内置代码编辑器和全天候 AI 导师)并解锁 Excel Formulas Academy 课程的其余内容,请升级到 CoddyKit PRO。 Excel Formulas Academy 课程共包含 4 节课。
「XLOOKUP 语法」这节课中我会学到什么?
了解查找值、查找数组和返回数组参数 你通过在浏览器中直接运行的动手代码来练习 Excel Formulas Academy,全天候 AI 导师会在你学习这节课的过程中回答你的问题。
学习 Excel Formulas Academy 需要有经验吗?
无需任何先前经验。CoddyKit 上的 Excel Formulas Academy 课程适合初学者到高级学习者,你可以从这里开始或从头开始,按照自己的节奏学习。 这是第 1 节课,共 4 节。
「XLOOKUP 语法」课时需要多长时间?
大多数 CoddyKit 课程大约需要 5–10 分钟。每节课都很精短且互动,所以你能稳步进步,并在网页和应用中从离开的地方继续。
我能在这节 Excel Formulas Academy 课中编写并运行代码吗?
能。每节 Excel Formulas Academy 课都包含内置代码编辑器,你可以在浏览器中直接编写并运行真实代码,并获得即时 AI 反馈 — 无需本地设置。
此课程中的所有课时
- XLOOKUP 语法
- 使用 if_not_found 处理未匹配情况
- 向左及从底部搜索
- 返回整行或整列