VBA代码大全023:用vba做一个自动定时关闭的msgbox对话框

vba有点基础的应该都知道,要在vba中创建弹窗对话框,可以使用msgbox。

 

但是msgbox必须人为关闭它,如果想要创建一个弹窗对话框,然后过一段时间自动关闭,网上有分享说可以借助WshShell的Popup方法。

代码如下:

 

 

其中popup方法的语法是这样的:

intButton = object.Popup(strText,[nSecondsToWait],[strTitle],[nType])

第一个参数strText是对话框中显示的文本内容,第二个参数nSecondsToWait是要等待的秒数,也就是几秒后关闭,第三个参数strTitle是对话框的标题文本,第4个参数nType是对话框的按钮类型。

 

但是这个代码我测试了下没有效果。

 

这里介绍另外一种方法,使用api函数MessageBoxTimeout。

这个函数已经是被微软隐藏起来了,但是还可以使用。

代码如下:

 

 

其中最后一个参数 dwTimeout 表示要设置的时间,以毫秒为单位。

2000毫秒就表示2秒后关闭。

       

发表评论