如何在Excel电子表格中启用和禁用昂贵的计算?

我使用巨大的excel工作表,因为使用宏和其他公式进行单元格计算,所以它们需要永远加载(即使我有一台好的计算机,也要超过5分钟).我想知道是否有办法用当前单元格值保存excel文件,而不是每次打开文件时计算单元格.

我正在寻找的是一个开关,可以打开和关闭计算,以便当我需要使用它们时我可以将它们设置为打开,当我完成后,我可以将它切换为关闭,细胞将保持他们的当前价值.

也许我可以创建一个可以做类似事情的宏,或者我只是在做梦,没有别的办法,所以我应该坐下来等待.

最佳答案 我们有类似的问题.

这就是我们使用的:

Function TurnOfCalcs()
    Application.ScreenUpdating = False
    Application.Calculation = xlCalculationManual
    Application.EnableEvents = False
    Application.DisplayAlerts = False
End Function 

在初始数据加载和更新时,我们关闭计算,屏幕更新,警报和事件.

一旦表单中的流数据完成,我们就会重新打开更新,如下所示:

Function TurnOnCalcs()
   Application.ScreenUpdating = True
   Application.Calculation = xlCalculationAutomatic
   Application.EnableEvents = True
   Application.DisplayAlerts = True
End Function

您仍然拥有udpate时间,但这意味着您不会在每次单个单元格更改后执行更新,这会显着加快文件加载时间.

点赞