Excel 如果我不在vba中还原application.calculation,是否有任何影响?

Excel 如果我不在vba中还原application.calculation,是否有任何影响?,excel,vba,Excel,Vba,我已经关掉了电源 application.calculation = xlcalculationmanual 在编写了这么长的vba代码之后,我终于完成了这些工作 application.calculation = xlcalculationautomatic 我看到的是,这些语句需要20秒的时间,有时在我恢复计算时会挂断 application.calculation = xlcalculationautomatic 我真的不明白为什么要花很多时间来发表这一声明。为了节省时间,我只是忘了

我已经关掉了电源

application.calculation = xlcalculationmanual
在编写了这么长的vba代码之后,我终于完成了这些工作

application.calculation = xlcalculationautomatic
我看到的是,这些语句需要20秒的时间,有时在我恢复计算时会挂断

application.calculation = xlcalculationautomatic

我真的不明白为什么要花很多时间来发表这一声明。为了节省时间,我只是忘了恢复它。如果我不将其还原,会有任何影响吗?

结果是不会进行任何计算。因此,如果您有一个公式为
=A1+A2
的单元格,并且您更改了A1和A2的值,那么在手动强制F9计算或再次选择自动计算之前,结果不会更新为A1和A2当前值的实际总和。也可以在工具>选项…>计算

我怀疑正在发生的是,它正在重新计算enture工作簿

理想情况下,您不应该禁用自动计算,因为这很危险。(即,您可能正在查看旧的缓存值,而不是最近的值)


相反,您应该验证问题是否为重新计算(即手动重新计算图纸并查看需要多长时间)。如果这是个问题,你应该用谷歌搜索加速计算的方法(例如,分割数据,使用静态引用等…)

相反!如果要优化不依赖工作表公式输入的代码的执行,禁用自动计算是非常可取的。如果使用不当确实很危险,就像刀子(甚至勺子)一样,但这不是吃饭时不使用餐具的借口!我同意让·弗朗索瓦的观点。存储当前计算设置,更改为手动计算,运行代码,然后恢复到以前的计算设置是标准良好编码。查尔斯·威廉(Charles William)的网站提供了所有你需要知道的——以及更多关于计算的信息,请参见