如何更正 #CALC! 错误

应用对象
Microsoft 365 专属 Excel Microsoft 365 Mac 版专属 Excel Excel 2024 Excel 2024 for Mac Excel 2021 Excel 2021 for Mac Excel for iPad Excel for iPhone Excel for Android 平板电脑版 Excel for Android 手机版

#CALC! 当 Excel 的计算引擎遇到它不支持的方案时,就会发生错误。 

常见原因

嵌套数组

Excel 无法计算数组内的数组。 尝试输入包含数组的数组公式时,会发生嵌套数组错误。 若要解决此错误,请尝试删除第二个数组。

例如,=MUNIT ({1,2}) 要求 Excel 返回 1x1 数组和 2x2 数组,而 Excel 不支持这两个数组。 =MUNIT (2) 按预期计算。

显示嵌套数组 #CALC 的屏幕截图!错误。

范围数组

数组只能包含数字、字符串、错误、布尔值或 链接的数据类型。 不支持范围引用。 在本示例中,=OFFSET (A1,0,0{2,3}) 会导致错误。

显示 #CALC 的屏幕截图!错误 - 数组包含范围。

若要解决此错误,请删除范围引用。 在这种情况下, (A1,0,0,2,3 的 =OFFSET) 计算正确。

空数组

Excel 无法返回空集。 当数组公式返回空集时,会出现空数组错误。 例如,=FILTER (C3:D5,D3:D5<100) 返回一个错误,因为数据集中没有小于 100 的值。

显示 #CALC 的屏幕截图!错误 - 空数组。

若要解决此错误,请更改条件或将参数添加到 if_emptyFILTER 函数。 在这种情况下,如果数组中没有项目,则 =FILTER (C3:D5,D3:D5<100,0) 返回 0。

单元格过多

Excel 网页版无法计算引用超过 10,000 个单元格的自定义函数。 相反,它返回 #CALC! 错误。 若要修复此错误,请在桌面版本的 Excel 中打开该文件。 有关详细信息,请参阅在 Excel 中创建自定义函数。

功能失败

此函数执行异步操作,但意外失败。 请稍后再试。

单元格包含 lambda

LAMBDA 函数的行为与其他 Excel 函数略有不同。 不能只是在单元格中输入它。 必须通过在公式末尾添加括号并将值传递给 lambda 函数来调用函数。 例如:

  • 返回 #CALC 错误:=LAMBDA(x, x+1) 
  • 返回结果 2:=LAMBDA(x, x+1)(1)

有关详细信息,请参阅 LAMBDA 函数。

显示 Lambda 错误的错误消息和下拉列表的屏幕截图。

单元格公式结果是一个函数

不能不调用或调用函数就放在单元格中。 通过添加括号和参数来调用函数。 或者,将函数添加到名称管理器,并将名称用作函数。

其他

当 Excel 的计算引擎遇到带有数组的未指定计算错误时,会发生此错误。 要解决此问题,请尝试重写公式。 如果有嵌套公式,请尝试使用 公式求值工具 来确定 #CALC 的位置! 错误。

Excel 中的 Python

数据错误

处理查询时出错。 请稍后重试。

超出数据限制

你的数据超出了上传限制。

Excel 中的 Python 计算一次最多可以处理 100 MB 的数据。 尝试使用较小的数据集。

网格查询

Python 公式只能引用依赖于外部数据的查询,而不能引用电子表格数据。

无效的 Python 对象

此 Python 对象并非来自附加到此工作簿的 Python 环境。

在单元格中查询

公式的结果不能是查询。

源错误

Power Query 出现问题。 请重试。

数据过多

Python 公式引用的数据过多,无法发送到 Python 服务。 

Excel 中的 Python 计算一次最多可以处理 100 MB 的数据。 尝试使用较小的数据集。

需要更多帮助吗?

你随时可以在 Excel 技术社区 中咨询专家,或在 社区中获取支持。

另请参阅

动态数组和溢出数组行为