如何更正 #N/A 错误

如何更正 #N/A 错误

#N/A 错误通常表示公式找不到要求查找的内容。

热门解决方案

VLOOKUP、HLOOKUP、LOOKUP 或 MATCH 函数的 #N/A 错误的最常见原因是公式找不到引用值。例如,源数据中不存在查阅值。

不存在查阅值。单元格 E2 中的公式是  =VLOOKUP(D2,$D$6:$E$8,2,FALSE)。无法找到值“香蕉”,因此此公式返回 #N/A 错误。
源数据中找不到项

在此情况下,查阅表格中未列有“香蕉”,因此 VLOOKUP 返回 #N/A 错误。

解决方案:可确保源数据中存在查阅值,或在公式中使用 IFERROR 等错误处理程序。例如,=IFERROR(FORMULA(),0),即:

  • = IF(公式求值错误,显示 0,其他情况显示公式的结果)

可使用“”不显示内容,或替换你自己的文本:=IFERROR(FORMULA(),”Error Message here”)

如果不确定此时该做什么或需要哪种类型的帮助,你可以在Excel 社区论坛中搜索类似问题或发布你自己的问题。

Excel 社区论坛的链接

如果你想继续,以下清单提供疑难解答步骤,帮助你弄清公式中可能已经出错的内容。

查阅值和源数据是不同数据类型。例如,你尝试让 VLOOKUP 引用数字,但源数据却存储为文本。

不正确的值类型。示例显示 VLOOKUP 公式返回 #N/A 错误,因为虽然查阅项被格式化为数字,但查阅表格被格式化为文本。
不同数据类型导致的 #N/A 错误

解决方案:确保数据类型相同。可通过选择单元格或单元格范围查看单元格格式,然后右键单击并选择“格式化单元格”>“数字”(或按 Ctrl+1),如有需要,可更改数字格式。

“设置单元格格式”对话框显示“数字”选项卡和选中的“文本”选项

提示: 如果需要对整列强制更改格式,首先应用所需的格式,然后可使用“数据”>“文本分列”>“完成”。

可使用 TRIM 函数删除前导或尾随空格。以下示例使用嵌套在 VLOOKUP 函数中的 TRIM 删除 A2:A7 中的名称的前导空格,然后返回部门名称。

在数组公式中配合使用 VLOOKUP 和 TRIM 可删除前导/尾随空格。单元格 E3 中的公式是 {=VLOOKUP(D2,TRIM(A2:B7),2,FALSE)},需要使用 CTRL+SHIFT+ENTER 输入。

{=VLOOKUP(D2,TRIM(A2:B7),2,FALSE)}

注意: 这是数组公式,必须使用 Ctrl+Shift+Enter 输入。Excel 将用括号 {} 自动将公式括起来。如果尝试自己输入,Excel 会将公式作为文本显示。

默认情况下,查阅表格中信息的函数必须按升序排列。但是 VLOOKUP 和 HLOOKUP 工作表函数包括 range_lookup 参数,此参数命令函数即使在未对表格排序的情况下,也要查找精确匹配。若要查找精确匹配,请将 range_lookup 参数设置为 FALSE。请注意:如果使用 TRUE(表示命令函数查找近似匹配),不仅会导致 #N/A 错误,还会返回如以下示例显示的错误结果。

将 VLOOKUP 与 TRUE range_lookup 参数配合使用可导致错误结果的示例。
由于在未排序的表格中使用近似匹配参数,VLOOKUP 失败

在此示例中,不仅“香蕉”返回 #N/A 错误,而且“梨”也返回错误价格。导致这种结果的原因是使用 TRUE 参数,此参数命令 VLOOKUP 查找近似匹配而非精确匹配。“香蕉”没有接近的匹配,而“梨”的字母顺序比“桃”靠前。在这种情况下,将 VLOOKUP 与 FALSE 参数配合使用将返回“梨”的正确价格,但“香蕉”仍导致 #N/A 错误,因为查阅列表中没有对应的“香蕉”。

如果使用的是 MATCH 函数,请尝试更改 match_type 参数的值以指定表格的排序顺序。若要查找精确匹配项,请将 match_type 参数设置为 0(零)。

若要修复此错误,请确保数组公式引用的区域中的行数和列数与其中输入了数组公式的单元格区域中的行数和列数相同,或在更少或更多单元格中输入该数组公式以匹配公式中的区域引用。

在此示例中,单元格 E2 引用了不匹配的范围:

具有导致 #N/A 错误的不匹配范围引用的数组公式示例。单元格 E2 的公式是 {=SUM(IF(A2:A11=D2,B2:B5))},必须使用 CTRL+SHIFT+ENTER 输入。

{=SUM(IF(A2:A11=D2,B2:B5))}

要使公式正确计算,需要对其进行更改,使两个范围反映行 2 – 11。

{=SUM(IF(A2:A11=D2,B2:B11))}

注意: 这是数组公式,必须使用 Ctrl+Shift+Enter 输入。Excel 将用括号 {} 自动将公式括起来。如果尝试自己输入,Excel 会将公式作为文本显示。

#N/A 输入单元格,妨碍 SUM 公式正确计算的示例。

在此情况下,五月到十二月有 #N/A 值,所以“总计”无法计算,而是返回 #N/A 错误。

若要修复此错误,请检查所用公式的函数语法,然后在返回了错误的公式中输入所有必需参数。这可能需要使用 Visual Basic 编辑器 (VBE) 检查函数。可从“开发工具”选项卡,或使用 ALT+F11 访问 VBE。

若要修复此错误,请验证包含用户定义函数的工作簿是否已打开,以及该函数是否工作正常。

若要修复此错误,请验证该函数中的参数是否正确,以及是否用在正确的位置中。

若要修复此错误,请按 Ctr+Alt+F9 以重新计算工作表

如果不确定是否是恰当的参数,可使用函数向导获得帮助。选择具有问题公式的单元格,转到功能区上的“公式”选项卡,按“插入函数”。

插入“函数”按钮。

Excel 将为你自动加载向导:

“公式向导”对话框的示例。

单击每个参数时,Excel 将为你提供每个参数的相应信息。

#N/A 可能很有用!使用如下图表示例时,使用 #N/A 是通常做法,因为 #N/A 值不会绘制在图表上。下面是分别使用 0 和 #N/A 时,图表的外观的示例。

绘制 0 值的折线图示例。

在上一个示例中,你将看到已绘制 0 值,并在图表的底部显示为平整线,然后迅速增长以显示“总计”。在下面的示例中,你将看到 0 值替换为 #N/A。

不绘制 #N/A 值的折线图示例。

有关出现在特定函数中的 #NA 错误的详细信息,请参阅下列主题:

返回页首

需要更多帮助吗?

可随时在 Excel 技术社区中咨询专家,在解答社区获得支持,或在 Excel User Voice 上建议新功能或功能改进。

另请参阅

将存储为文本的数字转换为数字

VLOOKUP 函数

HLOOKUP 函数

LOOKUP 函数

MATCH 函数

Excel 中公式的概述

如何避免损坏的公式

使用错误检查检测公式中的错误

Excel for Windows 中的键盘快捷方式

Excel for Mac 中的键盘快捷方式

所有 Excel 函数(按字母顺序)

所有 Excel 函数(按类别)

扩展你的技能
了解培训
抢先获得新功能
加入 Office 预览体验计划

此信息是否有帮助?

谢谢您的反馈!

谢谢你的反馈! 可能需要转接到 Office 支持专员。

×