您当前的位置:首页 >> 生活
Excel VBA工作薄 6.5到时会自动消失的提示窗口 不影响程序执行
发布时间:2020-02-09
 

前景提要()

在我们的印象中,不管是excel自带的弹窗,还是我们自己通过代码写出来的弹窗都是需要操作才会消失的

比方说这样的,你点击按钮,这个弹窗会一直存在

Excel VBA工作薄 6.5到时会自动消失的提示窗口  不影响程序执行

而在我们自己写的VBA代码中,弹窗都是附带着返回值得,如果不做出选择,弹窗就会一直存在,同时我们得程序也会一直卡在哪里

比方说我们之前做的这个运算得弹窗

Excel VBA工作薄 6.5到时会自动消失的提示窗口  不影响程序执行

但是有时候,我们仅仅是希望弹窗弹出来一下,告知我们当前程序运行得状态就好,然后会自动消失,并不需要做出任何选择,程序也会在弹窗消失之后自动运行,这样得弹窗可以实现吗?

场景模拟

假设我们当前得代码正在进行一个比较复杂得运算,并且关闭了屏幕刷新,对于使用者来说,当电脑屏幕上看,并不知道程序运行到那个步骤了,如果耐心不好得,可能会因为电脑死机或者程序坏了,这个时候我们就需要一个弹窗告诉使用者程序已经运行到哪里了,并且仅仅是弹窗,并不需要使用者做任何得操作,是不是更加得人性化呢,来上代码

代码区

Sub msg()
Dim WshShell As Object
Set WshShell = CreateObject("Wscript.Shell")
WshShell.popup "脚本当前正在进行计算,请耐心等待!", 2, "提示", 64
Set WshShell = Nothing
MsgBox "我是第二个弹窗,你要点我我才会操作!"
MsgBox "我是第三个弹窗,你点击了第二个我才会出现的!"
End Sub

来看看效果

当脚本运行得时候,会有这样得一个弹窗出现,告知使用者程序得进度,使用者可以不做任何操作,我们设置弹窗2秒之后自动消失

Excel VBA工作薄 6.5到时会自动消失的提示窗口  不影响程序执行

这是第二个弹窗,这个弹窗和我们之前接触到得弹窗一样,当出现这样得弹窗得时候,程序后台就也暂停执行,等待你点击的返回结果,在执行相应的操作,如果这个时候你正好离开座位,不好意思,这个弹窗会一致存在,程序也一直卡在这个地方

Excel VBA工作薄 6.5到时会自动消失的提示窗口  不影响程序执行

只有当你点击了确定之后,这个弹窗后面的代码,也就是第三个弹窗才会出现

Excel VBA工作薄 6.5到时会自动消失的提示窗口  不影响程序执行

代码分析

Set WshShell = CreateObject("Wscript.Shell")
WshShell.popup "脚本当前正在进行计算,请耐心等待!", 2, "提示", 64

今天的代码关键点,就在这里,这个就是实现窗口弹窗之后,会到时候消失的代码,

其实代码也没有什么难点,大家记下来直接套用即可

消失的时候,就是第二参数,想要多少秒消失,大家可以根据自己的需要来灵活设定~~

=======================================================

今天和大家分享了弹窗的另外一种新玩法,就是到时间会自动消失的弹窗,并且不影响代码和程序的执行,让代码的运行更加的人性化,不知道对于大家的日常工作中是否有帮助呢?

本来这一系列弹窗比较的简单,兴趣来了,写着写着就超纲了,明天开始我们将会进入工作表系列的各种操作,大家有什么需要,也赶紧留言给我啦~~~

好了,明晚19:00,准时再见。

=============================历史相关文章

Excel VBA工作薄 6.2利用msgbox窗口 实现简易用户对话功能

Excel VBA工作薄 6.3 多条件的对话窗体 让代码通用性更高

Excel VBA工作薄 6.4番外篇 行列分别计算 vba和函数强强联手