【问题标题】:How to pause code using userform如何使用用户窗体暂停代码
【发布时间】:2013-08-01 16:32:44
【问题描述】:

所以基本上我需要暂停宏代码,等待用户输入,然后继续其余代码。我知道通过使用“无模式用户表单”,可以做到这一点。 但是现在的重点是,userform弹出后的所有代码都需要写在命令按钮部分(基本上是userform自己的模块)。正因为如此,所有的初始化,我仍然需要的所有变量都被清除了。

所以我问有没有办法在 vba 代码中间暂停,然后等待用户输入,然后 继续其余代码

非常感谢您的帮助

【问题讨论】:

    标签: vba userform


    【解决方案1】:

    “用户输入”是什么意思?

    • MsgBox、InputBox 等标准输入法或模态用户表单可以满足您的要求;

    “弹出用户表单后的代码需要”...

    • 不是关闭表单,而是隐藏它。代码继续并形成数据 仍然可用;

    现在,如果您的意思是“用户输入”,操作工作簿,您必须进行事件:

    • 示例:创建一个用户输入前宏,然后将剩余代码放入Worksheet_Change事件中。

    【讨论】:

    • 表示第二个,操作工作簿,放入列,添加新工作簿之类的东西。我知道您想将代码分成两部分,但重点是所有变量,所有值都必须再次声明或被第一部分下推。更重要的是,您需要运行 2 个宏而不是 1,这对于自动化来说并不完全好。如果有更多的部分需要暂停,那么将需要更多的代码
    • 这也是范式的问题:VBA 是一种事件驱动的语言。请记住这一点!否则,您将如何控制用户操作?假设用户使用您的代码删除了一个工作表,...
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2010-10-09
    • 1970-01-01
    • 2016-03-18
    • 2011-09-26
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多