2

我想让一个 VBA 宏暂停它的执行并等待用户在继续之前按下一个键。有没有一种快速的方法可以做到这一点,或者我最好使用弹出窗口?

4

1 回答 1

3

警告:根据我的经验,除非您的 VBA 明确包含 DoEvents 语句,否则 Office 应用程序在 VBA 运行时无响应。

如果您只想在用户准备好之前暂时中断进程,那么使用弹出窗口是迄今为止最简单的方法。

添加类似以下内容将产生所需的结果:

Msgbox "Click to go on", , "Example"

用户将单击以继续,或者可以按回车键或空格键。

如果您想要更具体的弹出窗口,从代码加载模式用户表单(在 Excel 中)或模式表单(在 Access 中)将暂停调用代码,直到表单关闭。

老实说,除非绝对必要,否则我会拒绝暂停。任何不必要的干扰都是对效率的烦恼和阻碍。如果您只是想通知用户正在发生的事情,您可以更新屏幕以解释代码在执行操作时正在做什么。

于 2012-07-12T20:14:48.750 回答