使用 if_not_found 处理未匹配情况
没有匹配项时返回友好的提示信息
使用 if_not_found 处理未匹配情况 是 CoddyKit 上的免费 Excel Formulas Academy 课时。 这是第 2 节课,共 4 节。 你可以在下方免费阅读本课时的完整内容 — 然后在浏览器中使用内置代码编辑器和全天候 AI 导师进行实践。 这是 Excel Formulas Academy 学习路径的一部分,你的进度在网页和 CoddyKit 应用中同步。 Excel Formulas Academy 课程共包含 4 节课。
查找不到结果时
当 XLOOKUP 无法找到您要求的值时会发生什么?默认情况下,它会返回 #N/A 错误。
从技术上说,这个错误是正确的,但它在报告中不够美观,还可能破坏任何使用该结果的公式。XLOOKUP 提供了一种简洁的内置处理方式。
=XLOOKUP("Mouse Pad", A2:A20, B2:B20)if_not_found 参数
XLOOKUP 有一个可选的第四个参数,名为 if_not_found。如果不存在匹配项,就会返回您在此处填写的内容。
这是相对于 VLOOKUP 的一大改进,因为 VLOOKUP 必须用 IFERROR 包裹。使用 XLOOKUP 时,备用结果已经是同一函数的一部分。
=XLOOKUP(lookup_value, lookup_array, return_array, if_not_found)返回友好消息
最常见的用途是显示易读的文本,而不是 #N/A。
在这里,如果 D2 中的产品不在列表中,单元格会显示“未找到”,而不是错误代码。任何查看工作表的人都能立即明白发生了什么。
=XLOOKUP(D2, A2:A20, B2:B20, "Not found")改为返回零
有时数字比文本更有用,尤其是结果还要参与计算时。
没有匹配项时,您可以返回 0,这样后续的 SUM 或乘法仍能正常工作,不会产生新的错误。
=XLOOKUP(D2, A2:A20, B2:B20, 0)返回空白
如果没有匹配项时希望单元格在视觉上保持为空,请返回由两个引号组成的空文本字符串。
这对于追求整洁的仪表板很有用,因为空白单元格通常比占位文本更合适。请注意,该单元格并不是真正为空——它包含一个空字符串;如果其他公式要测试空白单元格,这一点就很重要。
=XLOOKUP(D2, A2:A20, B2:B20, "")完整示例
假设销售代表在 D2 中输入订单 ID,以查找客户姓名。订单 ID 位于 A 列,姓名位于 C 列。
如果他们误输入了 ID,公式会返回清晰的提示,而不是令人困惑的错误。备用消息会引导他们修正输入内容。
=XLOOKUP(D2, A2:A100, C2:C100, "Check the order ID")从另一个单元格返回备用值
未找到时的返回值不一定要手动输入文本,也可以指向另一个单元格。
例如,您可以将默认区域存储在 G1 中,并在特定查找失败时返回该区域。这样无需修改公式,就能编辑备用值。
=XLOOKUP(D2, A2:A20, B2:B20, G1)未找到时的返回值与 IFERROR
您仍然可以将 XLOOKUP 包装在 IFERROR 中,但两者有一个细微的区别。
- 未找到时的返回值只处理没有匹配项的情况
- IFERROR会隐藏所有错误,包括由公式本身确实存在的错误引起的错误
使用未找到时的返回值更安全,因为真正的错误会保持可见,而不会被掩盖。
=XLOOKUP(D2, A2:A20, B2:B20, "Not found")串联第二次查找
有一个很实用的技巧:让一次 XLOOKUP 的备用值成为另一次 XLOOKUP。
先搜索主要列表;如果找不到项目,再搜索备用列表。这比嵌套的 IFERROR 简洁得多,读起来几乎就像普通英语。
=XLOOKUP(D2, A2:A20, B2:B20, XLOOKUP(D2, F2:F20, G2:G20, "Not found"))与计算结合
当查找结果要参与数学运算时,使用数字备用值可以确保整个过程正常运行。
在这里,找不到价格时返回 0,因此 E2 中与数量相乘的结果仍然是一个数字,而不会让错误扩散到整个工作表。
=XLOOKUP(D2, A2:A20, B2:B20, 0) * E2选择合适的备用值
请选择与单元格用途相匹配的备用值:
- 在人类可读的报告中使用“未找到”等文本
- 如果后续要进行加法或乘法,请使用
0 - 对于整洁的视觉布局,请使用空字符串
- 对于多来源数据,请使用另一次查找
第四个参数可以将脆弱的查找转换为完善、专业的结果。
=XLOOKUP(D2, A2:A20, B2:B20, "Not found")快速检查
测试您对未找到时返回值参数的理解。
回顾:优雅处理未匹配情况
您已经学会了如何处理查找不到内容的情况:
- XLOOKUP 在没有匹配项时默认返回
#N/A - 可选的未找到时的返回值参数可以提供整洁的备用值
- 可以使用文本、0、空白、单元格,甚至第二个 XLOOKUP
- 它只处理没有匹配项的情况,因此真正的错误仍然可见
接下来,您将学习向左查找以及从列表底部开始查找。
=XLOOKUP(D2, A2:A20, B2:B20, "Not found")用 AI 导师学习 Excel — 免费
在浏览器中编写并运行真实代码,获得全天候 AI 导师的即时帮助,并在网页或应用中继续学习。
- 课程
- 30
- 课程
- 120
常见问题解答
「使用 if_not_found 处理未匹配情况」课时是免费的吗?
是的 — 「使用 if_not_found 处理未匹配情况」的完整文本可在网页上免费阅读。要进行交互式练习(内置代码编辑器和全天候 AI 导师)并解锁 Excel Formulas Academy 课程的其余内容,请升级到 CoddyKit PRO。 Excel Formulas Academy 课程共包含 4 节课。
「使用 if_not_found 处理未匹配情况」这节课中我会学到什么?
没有匹配项时返回友好的提示信息 你通过在浏览器中直接运行的动手代码来练习 Excel Formulas Academy,全天候 AI 导师会在你学习这节课的过程中回答你的问题。
学习 Excel Formulas Academy 需要有经验吗?
无需任何先前经验。CoddyKit 上的 Excel Formulas Academy 课程适合初学者到高级学习者,你可以从这里开始或从头开始,按照自己的节奏学习。 这是第 2 节课,共 4 节。
「使用 if_not_found 处理未匹配情况」课时需要多长时间?
大多数 CoddyKit 课程大约需要 5–10 分钟。每节课都很精短且互动,所以你能稳步进步,并在网页和应用中从离开的地方继续。
我能在这节 Excel Formulas Academy 课中编写并运行代码吗?
能。每节 Excel Formulas Academy 课都包含内置代码编辑器,你可以在浏览器中直接编写并运行真实代码,并获得即时 AI 反馈 — 无需本地设置。
此课程中的所有课时
- XLOOKUP 语法
- 使用 if_not_found 处理未匹配情况
- 向左及从底部搜索
- 返回整行或整列