Excel工作簿可能变得非常复杂。实际上,可以创建需要数小时才能计算的工作簿。当然,这样做的唯一问题是,当您打开工作簿时,如果配置了Excel,它将自动重新计算。这意味着在某些情况下,仅打开工作簿可能需要几个小时。

当然,一种解决方案是在打开工作簿之前关闭自动重新计算。如果您像我一样,这种解决方案就不会那么好,因为我的记忆力并不总是那么好。

更好的解决方案是关闭某些工作簿的自动重新计算。由于Excel不允许您逐个工作簿指定手动或自动重新计算,因此您需要通过使用在打开工作簿时自动运行的宏来添加此功能。该宏可以关闭自动重新计算,如下所示:

Private Sub Workbook_Open()

Application.Calculation = xlManual     Application.CalculateBeforeSave = False End Sub

该宏必须放在ThisWorkbook项目窗口中。这意味着您应该打开工作簿,按Alt + F11以显示VBA编辑器,然后在“对象浏览器”(“ VBA编辑器”窗口的左上角)上双击ThisWorkbook对象。

如果需要,还可以在前一个宏之后放置另一个宏。关闭工作簿时,此宏将自动运行,在这种情况下,将重新打开自动重新计算:

Private Sub Workbook_BeforeClose(Cancel As Boolean)

Application.Calculation = xlAutomatic     Application.CalculateBeforeSave = True End Sub

关于使用此宏,需要记住一个重要的警告。您只能为整个应用程序设置计算模式。因此,关闭自动重新计算功能后,也不会自动重新计算其他工作表。

注意:

如果您想知道如何使用此页面(或_ExcelTips_网站上的任何其他页面)中描述的宏,我准备了一个特殊页面,其中包含有用的信息。

_ExcelTips_是您进行经济高效的Microsoft Excel培训的来源。

本技巧(1988)适用于Microsoft Excel 97、2000、2002和2003。可以在以下功能区中为Excel的功能区界面(Excel 2007及更高版本)找到本技巧的版本: