|
楼主 |
发表于 2009-6-24 08:36
|
显示全部楼层
第11部分 其他应用
技巧190 优化代码
190-1 关闭屏幕刷新
在使用代码改变工作表的显示内容或格式时关闭屏幕刷新可以加快运行速度,如下面的代码所示。- #001 Sub Screen()
- #002 Dim i As Integer
- #003 Dim t As Date
- #004 Dim t1 As String
- #005 Dim t2 As String
- #006 Application.ScreenUpdating = False
- #007 t = Timer
- #008 For i = 1 To 30000
- #009 Cells(1, 1) = i
- #010 Next
- #011 t1 = Timer - t
- #012 Application.ScreenUpdating = True
- #013 t = Timer
- #014 For i = 1 To 30000
- #015 Cells(1, 1) = i
- #016 Next
- #017 t2 = Timer - t
- #018 MsgBox "关闭屏幕刷新运行时间:" & Format(t1, "0.00000") & "秒" _
- #019 & Chr(13) & "开启屏幕刷新运行时间:" & Format(t2, "0.00000") & "秒"
- #020 End Sub
复制代码 代码解析:
Screen过程使用两次For...Next语句给A1单元格填充数据,最后使用消息框显示两次运行的时间。在第一次循环时关闭屏幕刷新,应用于Application对象的ScreenUpdating属性设置屏幕刷新功能是否打开,设置为False关闭屏幕刷新,将看不到代码的执行过程,但可以加快代码的运行速度。
运行Screen过程,消息框显示两次代码的运行时间,可以看出关闭屏幕刷新后运行时间远远小于开启屏幕刷新时运行的时间,如图所示。
|
|