Application.ScreenUpdating 属性 (Excel)

如果屏幕更新已启用,此属性的值为 True。 读/写 Boolean

语法

expression.ScreenUpdating

expression:表示 Application 对象的变量。

注解

禁用屏幕更新可以加快宏代码的速度。 虽然无法实时了解宏的最新动态,但它的运行速度会变快。

当宏结束运行后,请记住将 ScreenUpdating 属性设置回 True

示例

下面的示例展示了如何通过禁用屏幕更新来提高代码运行速度。 此示例每隔一个地隐藏 Sheet1 上的列,同时记录这样做所花费的时间。 此示例在第一次隐藏列时,屏幕更新已启用;在第二次隐藏列时,屏幕更新已禁用。 运行此示例后,可以比较消息框中显示的相应运行时间。

Dim elapsedTime(2) 
Application.ScreenUpdating = True 
For i = 1 To 2 
 If i = 2 Then Application.ScreenUpdating = False 
 startTime = Time 
 Worksheets("Sheet1").Activate 
 For Each c In ActiveSheet.Columns 
 If c.Column Mod 2 = 0 Then 
 c.Hidden = True 
 End If 
 Next c 
 stopTime = Time 
 elapsedTime(i) = (stopTime - startTime) * 24 * 60 * 60 
Next i 
Application.ScreenUpdating = True 
MsgBox "Elapsed time, screen updating on: " & elapsedTime(1) & _ 
 " sec." & Chr(13) & _ 
 "Elapsed time, screen updating off: " & elapsedTime(2) & _ 
 " sec."

支持和反馈

有关于 Office VBA 或本文档的疑问或反馈? 请参阅 Office VBA 支持和反馈,获取有关如何接收支持和提供反馈的指南。