这是一个为VBA程序执行过程添加自动提示窗的演示。例如,在程序执行之前,点击开始,然后弹出一个窗口提示“正在执行”,当执行完毕后自动关闭提示窗,这样做可以避免当等待时间过长时用户不知所措。
步骤1:
首先,到开发工具中在VBA工程创建一个提示窗体UserForm1,如下图1:
图1
步骤2:
其次,在程序开始执行前显示该窗体,代码如下:
UserForm1.Show 0 '参数0表示打开窗体后不暂停,继续往下执行
Application.Wait (Now + TimeValue("0:00:01")) '延时1秒,此语句非常关键,可让窗体正常显示
步骤3:
最后,关闭提示窗体,代码如下:
UserForm1.Hide '隐藏/关闭窗体
演示:
当步骤2没有延时语句时,提示窗体的文字是无法正常显示的,如下图2:
图2
当步骤2添加了延时语句后,提示窗体的文字就能正常显示了,如下图3:
图3
后记:当然,Wait函数也有缺陷,并非百分百能成功,而使用On Time函数能让窗体更加稳定,几乎百分之百成功,关于On Time的使用方法,可参考《完美Excel启动欢迎界面》一文。