概念:工作簿公式中的自动计算和手动计算
执行特定操作可使 Worksheets 计算或重新计算工作簿中的公式,了解这些操作将非常有用。
计算取决于公式类型和您正在执行的操作。重新计算时间包括运行报告、执行公式和应用条件格式所花费的时间。
下表对 Worksheets 是否会重新计算工作簿数据的情形进行了总结:
重新计算设置 | 公式/工作簿类型 | 事件/操作 | 是否重新计算公式? |
|---|---|---|---|
自动 | 易变
| 更改工作簿中的任意单元格。 | 是。 |
自动 | 非易变 | 更改此单元格依赖的任意单元格。 | 是。 |
自动 | ARRAYAREA | 某个公式使用了 ARRAYAREA,并且 ARRAYAREA 引用的数组发生了变更。 ARRAYAREA 引用的数组的锚定单元格(左上角单元格)发生变更。 | 是。 |
自动 | RANDCONST | 否。仅在以下情况下重新计算此非易变函数:
| |
自动 | SELECT(包含动态数据) | 手动刷新动态数据范围。 运行动态数据刷新时间表。 | 是。 |
自动 | SELECT(作为通用公式) | 更改公式引用的任意单元格。 | 视情况而定。
如果您使用参数部分来引用数据,则公式会在数据发生变更时运行。如果您更改了 SELECT 语句部分中的数据,则公式不会重新运行。 |
自动 | ONCE | 在 ONCE 函数中放置(自动换行)任何公式。 | 否。 |
自动 | 复制的工作簿 | 您首次打开复制的工作簿。 | 否。选择“数据”“全部重新计算”可更新工作簿。 |
自动 | 转换后的 Microsoft Excel 文件 | 您首次打开上传/转换后的工作簿。 | 否。选择“数据”“全部重新计算”可更新工作簿。 |
手动 | 任意 | 所有。 | 否。除非您手动发起重新计算,否则 Worksheets 不会重新计算公式。这适用于所有公式,包括易变公式。(Worksheets 会在您首次提交新公式时对其进行计算,但不会重新计算这些公式。) |
工作簿中的重新计算默认设为“自动”。
在某些情况下,您可能想阻止自动重新计算。示例:如果您要对包含复杂公式的工作簿进行多项变更,则您可能想等到完成所有变更后再重新计算公式。
要指定计算选项,请选择“文件”“设置”。
要手动重新计算公式,请执行以下操作之一:
- 选择“数据”“重新计算”,这会计算数据发生变更的工作簿中的所有公式。
- 选择“数据”“全部重新计算”,这会计算工作簿中的所有公式,无论自上次计算以来数据是否发生了变更。“全部重新计算”还会更新使用者工作簿中的外部引用。
注释
:- 如果您执行的操作不会引发重新计算(例如将 Microsoft Excel 文件上传到 Worksheets 并首次打开转换后的工作簿),请选择“数据”“全部重新计算”来更新工作簿。
- 使用重新计算设置或操作时,工作簿中的动态数据不会受到影响。您可以通过以下方式手动刷新动态数据:选择 ,在“动态数据”面板中选择“立即刷新”,或者使用 设置刷新时间表。