vba 中 如何自动选择弹出的对话框,点击“确定”,使程序继续运行
发布网友
发布时间:2022-04-26 22:49
我来回答
共4个回答
热心网友
时间:2023-11-11 02:40
在要显示对话框的代码前关闭系统信息框:Application.DisplayAlerts = False
代码结束时用Application.DisplayAlerts = True开启系统信息框。
热心网友
时间:2023-11-11 02:41
我们在执行程序的时候,往往会需要一个提示,在前几个章节中讲到的MsgBox函数可以实现这个功能,其他的办法还有没有呢?该怎么办呢?
这时我们可以用到WshShell.Popup方法,WshShell.Popup方法的语法如下:
WshShell.Popup(strText, [natSecondsToWait], [strTitle], [natType]) = intButton
参数a) strText是必需的,与Msgbox的Prompt参数类似,代表在消息框中作为信息显示的字符或字符串。如果显示的内容超过一行,可以在每一行之间用换行符 (Chr(10))等将各行分隔开来。
b) natSecondsToWait是可选的,其时间单位为妙。如果提供natSecondsToWait参数且其值大于零,则消息框在natSecondsToWait 参数指定的秒数后关闭。
c) strTitle是可选的,代表在消息框标题栏中作为标题的字符或字符串,若省略,则窗口标题为"Windows 脚本宿主"。
d) natType是可选的,指定消息框中显示按钮的数目及类型、使用的图标样式、缺省按钮以及消息框的强制回应等,与MsgBox函数buttons参数相同.
e) intButton指示用户所单击的按扭编号,与MsgBox函数的返回值相同,若用户在natSecondsToWait 秒之前不单击按扭,则返回值为 -1 。
下面我们看下面的一个实例代码:
Sub MyWshShell()
Dim WshShell As Object
Set WshShell = CreateObject("Wscript.Shell")
WshShell.popup "执行完毕!", 2, "提示", 64
Set WshShell = Nothing
End Sub
代码解析:
WshShell过程使用WshShell.Popup方法显示消息框。
热心网友
时间:2023-11-11 02:41
这是windows API的窗口钩子做的事情, 不是VBA的任务, 你是什么环境有这个需求?追问vba:删除sheet2 sheet3的程序:
For i = Sheets.Count To 2 Step -1 Sheets(i).Delete Next 会弹出警告窗口"要删除的工作表中可能存在数据。如果要永久删除这些数据,请按“删除”"
请问如何让程序自动选择 "删除 " .然后继续执行剩余程序。。?
追答这个简单, 先把excel警告提示功能关闭, 然后删除, 再打开即可
xlApp.DisplayAlerts = False
xlBook.Worksheets(1).Delete
xlApp.DisplayAlerts = True
热心网友
时间:2023-11-11 02:42
这个用模拟键盘事件应该可以解决
热心网友
时间:2023-11-11 02:40
在要显示对话框的代码前关闭系统信息框:Application.DisplayAlerts = False
代码结束时用Application.DisplayAlerts = True开启系统信息框。
热心网友
时间:2023-11-11 02:41
我们在执行程序的时候,往往会需要一个提示,在前几个章节中讲到的MsgBox函数可以实现这个功能,其他的办法还有没有呢?该怎么办呢?
这时我们可以用到WshShell.Popup方法,WshShell.Popup方法的语法如下:
WshShell.Popup(strText, [natSecondsToWait], [strTitle], [natType]) = intButton
参数a) strText是必需的,与Msgbox的Prompt参数类似,代表在消息框中作为信息显示的字符或字符串。如果显示的内容超过一行,可以在每一行之间用换行符 (Chr(10))等将各行分隔开来。
b) natSecondsToWait是可选的,其时间单位为妙。如果提供natSecondsToWait参数且其值大于零,则消息框在natSecondsToWait 参数指定的秒数后关闭。
c) strTitle是可选的,代表在消息框标题栏中作为标题的字符或字符串,若省略,则窗口标题为"Windows 脚本宿主"。
d) natType是可选的,指定消息框中显示按钮的数目及类型、使用的图标样式、缺省按钮以及消息框的强制回应等,与MsgBox函数buttons参数相同.
e) intButton指示用户所单击的按扭编号,与MsgBox函数的返回值相同,若用户在natSecondsToWait 秒之前不单击按扭,则返回值为 -1 。
下面我们看下面的一个实例代码:
Sub MyWshShell()
Dim WshShell As Object
Set WshShell = CreateObject("Wscript.Shell")
WshShell.popup "执行完毕!", 2, "提示", 64
Set WshShell = Nothing
End Sub
代码解析:
WshShell过程使用WshShell.Popup方法显示消息框。
热心网友
时间:2023-11-11 02:41
这是windows API的窗口钩子做的事情, 不是VBA的任务, 你是什么环境有这个需求?追问vba:删除sheet2 sheet3的程序:
For i = Sheets.Count To 2 Step -1 Sheets(i).Delete Next 会弹出警告窗口"要删除的工作表中可能存在数据。如果要永久删除这些数据,请按“删除”"
请问如何让程序自动选择 "删除 " .然后继续执行剩余程序。。?
追答这个简单, 先把excel警告提示功能关闭, 然后删除, 再打开即可
xlApp.DisplayAlerts = False
xlBook.Worksheets(1).Delete
xlApp.DisplayAlerts = True
热心网友
时间:2023-11-11 02:42
这个用模拟键盘事件应该可以解决