参考信息:公式错误
错误 | 注释 |
|---|---|
#DIV/0! | 公式正尝试除以零。示例:您可能有一个公式,其中单元格的值/结果意外为零或空白,并且此公式正尝试除以该数字。 |
#ERROR! | 很少出现的错误。大多数错误消息都相当具体,但 #ERROR 可能仅指明存在语法错误,或者您因未知原因而无法提交公式。 |
#FIELD! | 存在数据类型错误。 |
#GETTING_DATA! | 这不是真正的错误,但当正在进行大型或复杂计算,或者正在运行动态数据刷新时,该错误可能会暂时显示在工作簿单元格中。当计算完成或动态数据刷新完成时,此消息会消失。 |
#N/A! | 值不可用于函数或公式。示例:
|
#NAME! | 您引用了定义的名称或函数,但它们不存在。 |
#NULL! | 您可能:
|
#NUM! | 公式包含了对于运算类型无效的数值数据。 示例:当数据范围包含多个币种单位时,数据透视表不支持进行计算。如果您的数据透视表包含工资数据,并且某些工资以美元为单位,而另一些以加元为单位,则您无法对数据执行 SUM、AVERAGE 或其他计算;如果将光标悬停在错误单元格上,您会看到“存在单位转换问题”。在这种情况下,唯一有效的函数是 COUNTA。 为帮助排查可能是单位问题的 #NUM 错误,您可以选择来查看单位设置。 |
#REF! | 引用无效。 |
#SPILL! | 导致此错误的最常见原因是无法将数组公式结果放入工作簿,因为这些结果会与现有数据重叠。 当在输入区域中时,如果公式尝试跨过输入区域的边界放置数据,则会发生 #SPILL。 “清除”单元格的常用方法是先输入一个空格字符,然后按 Enter 键、Tab 键或箭头键。这样做并不会真正清除单元格,而是会清除单元格的值。它会在其中保留一个空格字符,并可能导致公式无法正常工作。示例:在计算数组公式时,非空调用可能会导致溢出错误,或者会导致意外结果、COUNTBlanK 或其他问题。对于其中包含空格的单元格,系统未提供可视标志。因此,如有疑问,请手动清除包含空格的单元格。 |
#VALUE! | 您使用了错误类型的运算对象或函数参数。示例:如果公式在需要输入数字的位置找到空格、字符或文本,则您会看到 #VALUE。 |
####### | 它其实不是错误,而是表示列宽不够,无法显示值。 |
有关公式错误的提示
请注意,您必须使用相应的键盘快捷键提交数组公式。有关有约束的数组、无约束的数组等的信息,请参见“概念:工作簿中的数组公式”。
如果您看到与循环引用相关的错误,建议您查看《Worksheets User Guide》(Worksheets 用户指南)中的“Concept: Circular References”(概念:循环引用)。
在中,记下自动或手动重新计算的工作簿设置。
尝试简化复杂公式:
- 如果公式包含大量嵌套函数,请将其中一个或多个嵌套函数分离出来,并将其结果放入在原始公式的其余部分中引用的单独范围内。
- 如果公式含有似乎无法解析的外部引用,请尝试合并工作簿,以便仅引用另一个工作表而不是整个工作簿;或者,将所有数据都放在一个工作表中。
显示容易理解的文本而非错误代码
有时,您使用的公式会根据单元格值进行计算,而如果其中一个值不是预期值,则最终会出现 #DIV/0 等错误。如果您想为可能出现的错误做好安排,并向工作簿用户显示容易理解的消息,您可以使用:
- IFERROR 函数或 ISERROR 函数。
- IFEMPTY 公式(适用于结果为空数组的无约束数组公式)。
示例:某个工作簿显示了销售人员一个季度的平均奖金。要获得奖金,销售人员在特定月份的货物销售额必须超过 $5,000。由于 Matt 没有获得任何奖金,“Avg Bonus”单元格将包含 #DIV/0 错误。为防止显示此难以理解的错误,我们可以将 AVERAGEIF 函数嵌套在 IFERROR 中。以下公式位于 F2 中:
=IFERROR(AVERAGEIF(B2:D2,">5000",B2:D2),"No bonuses")
A | B | C | D | E | F | |
|---|---|---|---|---|---|---|
1 | 姓名 | 一月销售额 | 二月销售额 | 三月销售额 | 奖金数 | 平均奖金 |
2 | Matt Bond | $1500 | $3275 | $2900 | 0 | 无奖金 |
ISERROR 函数与 IFERROR 函数类似,但前者根据是否存在错误来返回 TRUE 或 FALSE 结果。