保存前只计算活动工作簿

我已经试过我的水平最好find这个问题的答案,没有运气,我在这里发布我的第一个问题在stackoverflow。

问题:在保存其他工作簿的情况下,Excel可以只计算活动工作簿。

情景:我有一个带有多个公式的大量工作簿。 主控制VBA基于多个variables创build多个工作簿,其中包含多个报表。 所有报告工作簿都会在创build时转换为值。

问题:计算主工作簿大约需要20秒。 因此,当VBA试图保存并closures报告工作簿时,它将同时计算报告和正在创build性能问题的主要工作簿。

期待您的解决scheme。

在此先感谢您的时间。

马诺。

没有内置的方法只计算活动工作簿(请参阅https://excel.uservoice.com/forums/304921-excel-for-windows-desktop-application/suggestions/10601079-workbook-level-calculation为我的向Excel小组提出这个build议)。

您可以使用Worksheet.Enablecalculationclosures单个工作表的计算,并且您可以通过closuresApplication.CalculateBeforeSave来停止Excel保存计算,但是这两种方法都有潜在的不良副作用。