通过 ScreenUpdating 属性禁止更新屏幕上的内容

听过VBA代码吗?羡慕能用代码高效办公的人吧!VBA代码远没有大家想象的那么难,跟着小编学一起学吧!

在VBA中,Application对象代表Excel程序本身,对Excel程序的设置和修改,都是在操作Application对象。

如何通过 ScreenUpdating 属性禁止更新屏幕上的内容?

默认情况下,在Excel中每执行一个操作,如在单元格中输入数据、清除单元格中的内容、设置单元格格式、新建工作表、打开工作簿等,Excel都会将操作所得的结果输出到屏幕上,更新屏幕上显示的内容。大家可以执行下面的过程看一看。

在这个过程中,第1、3、5行代码分别执行了清除工作表中所有数据及格式、在A 1 :B 10区域中输入数据、设置A 1 :B 10区域的底纹颜色的操作。在执行这个过程时,每执行一步操作,VBA都会用MsgBox函数创建一个对话框提示我们观察执行代码后的结果,如图3 -70所示。

图 3-70 执行过程的结果
比如在使用VBA代码打开不同的工作簿、读取或往其中输入数据,或者通过VBA代码解决一个问题时,中间需要新建一些临时的工作表或文件等,但并不希望在执行这些操作时,计算机将这些操作所得的结果显示到屏幕上,而只希望看到过程执行结束后的最终结果。
这时,就可以通过Application对象的ScreenUpdating属性关闭屏幕更新,让Excel只执行代码对应的操作,不将操作结果显示到屏幕上。
Application对象的ScreenUpdating属性是控制屏幕更新的开关。如果将ScreenUpdating属性设置为False,Excel会关闭屏幕更新,执行过程时,将看不到代码执行的效果。反之,如果将ScreenUpdating属性设置为True,Excel会开启屏幕更新,执行过程时就能看到过程中每一行代码操作和计算的效果。默认情况下,ScreenUpdating属性的值为True,如果不希望将过程中间的计算和操作结果显示到屏幕上,应在过程中将ScreenUpdating属性设置为False,如:

当执行这个过程时,只有单击最后一个对话框中的【确定】按钮,待过程执行结束,才能在工作表中看到执行过程所得的结果,如图 3 - 71 所示。

图 3-71 在过程中关闭了屏幕更新

学会了吗?快速提高你的效率吧!从此变“excel一秒超人”!

*注:本文部分图片来源于互联网,仅供学习、交流使用。不具有任何商业用途,若有侵权,请联系删除。

(0)

相关推荐