excel学习库

excel表格_excel函数公式大全_execl从入门到精通

Excel VBA 禁用屏幕更新,加快运行速度

关注后回复“资料”,即可免费获取Excel相关学习和实战资料。如果你也对数据分析感兴趣,并且想在这方面有所发展,无论是方法还是技术,例如Excel、VBA、SQL、Python,特别是Excel相关,欢迎与我交流。如果有这方面的问题或者困惑,也欢迎与我探讨。

前文有提到,如果你想让自己编写的Excel VBA 用起来更舒适,就需要思考一些用户体验,比如说优化程序提高程序运行效率,让使用者需要等待的时间更短,例如禁用屏幕更新可以加快代码的速度。

通过在代码中给Application.ScreenUpdating赋值,可以设置是否禁用屏幕更新,ScreenUpdating的默认值一般为True,也就是开启了屏幕更新,如果想要禁用屏幕更新,需要设置为False,等程序运行完毕再将其设置为True

下面进行测试,依次选中单元格A1到A1000,然后填充单元格所在的行数。此处可以使用上文提到的Timer函数计算程序运行的时间。

Sub 不关闭屏幕更新填充数值()

'记录开始时间

Start = Timer

'填充数值

For i = 1 To 1000

Range("A" & i).Select

ActiveCell.FormulaR1C1 = i

Next

'记录结束时间

Finish = Timer

'计算使用时间

TotalTime = Finish - Start

'显示使用时间

MsgBox "使用时间:" & TotalTime & " 秒"

End Sub


Sub 关闭屏幕更新填充数值()

'关闭屏幕更新

Application.ScreenUpdating = False

'记录开始时间

Start = Timer

'填充数值

For i = 1 To 1000

Range("A" & i).Select

ActiveCell.FormulaR1C1 = i

Next

'记录结束时间

Finish = Timer

'计算使用时间

TotalTime = Finish - Start

'显示使用时间

MsgBox "使用时间:" & TotalTime & " 秒"

'开启屏幕更新

Application.ScreenUpdating = True

End Sub

不关闭屏幕更新填充数值使用了2.539063秒,关闭屏幕更新填充数值使用了0.1875秒。

推荐阅读:

发表评论:

◎欢迎参与讨论,请在这里发表您的看法、交流您的观点。

«    2024年12月    »
1
2345678
9101112131415
16171819202122
23242526272829
3031
控制面板
您好,欢迎到访网站!
  查看权限
网站分类
搜索
最新留言
    文章归档
      友情链接