当 ScreenUpdating = False 时,有没有办法从 VBA 仅刷新指定范围的单元格的显示?
我的意思是:
Application.ScreenUpdating = False
Application.Calculation = xlCalculationManual
Range("A1").Calculate
Range("A1").SomeFunctionThatRefreshesThis
...
卡尔
如果 ScreenUpdating 设置为 false,则在 ScreenUpdating 设置为 True 之前不会显示更新。您可以按照您想要的方式进行此操作的唯一方法是以更细粒度的方式使用 ScreenUpdating 属性。例如:
Application.Calculation = xlCalculationManual
Range("A1").Calculate
Application.ScreenUpdating = False
Range("A1").SomeFunctionThatRefreshesThis
Application.ScreenUpdating = True
Application.ScreenUpdating = False
...
您可以使用 Charles Williams 的 RangeCalc 插件计算特定范围的单元格(Decision Models)
http://www.decisionmodels.com/downloads.htm#addload
应用程序级别的屏幕更新设置当然会阻止您看到更改,但如果没有将其设置为 false,整体效果应该是相似的。