【发布时间】:2013-02-06 19:46:49
【问题描述】:
我编写了一个 VBScript,它可以自动处理 Excel 工作簿的负载。
对于其中一些工作簿,在打开它们时会触发一个 MsgBox。此消息框正在中断自动化。
有没有办法在 VBScript 中监听这个 MsgBox 并在它弹出时“单击”确定?
【问题讨论】:
-
VBScript 还是 VBA?消息框旨在停止并强制用户进行交互。如果您只想要一条消息,您可能需要创建一个用户表单 (vba) 以允许您的脚本继续。忽略我,我虽然你想要消息框:D
-
有一些选择,但对于任何类型的生产用途,它们往往很复杂、不优雅和/或不可靠。如果您让我们知道您想要绕过哪个消息框,那么我们可能会提供更多有用的建议。
-
@JamesSnell 从工作表中的 VBA 代码调用消息框。
-
好吧,这是你的代码,如果你不想要 msgbox,那么最优雅的解决方案是在其他工作表中摆脱它,因为绕过它将是一个肮脏的世界黑客。 MsgBox 应该被禁止恕我直言。
-
@JamesSnell,我认为整个事情都是一个肮脏的黑客,不幸的是我无法对此做太多事情。我无法摆脱 MsgBox,但如果 VBA 以某种方式“知道”打开工作簿的是我的脚本而不是用户,我可以暂时禁用它。
标签: excel vbscript automation msgbox