我有一个行为不端的VBA excel用户表单。基本上我希望我的代码暂停,直到按下用户窗体上的命令按钮。有什么想法吗?
在一个模块中:
Public okayclicked as boolean
Sub MyThing
UserForm1.Show
Do Until okayclicked
DoEvents
Loop
UserForm1.Hide
End Sub
在我的用户表单中:
Sub CommandButton1_Click()
okayclicked = True
End Sub
不确定还有什么可以尝试使这项工作。任何帮助表示赞赏!谢谢!
答案 0 :(得分:0)
使用MsgBox
询问用户输入,或将表单设置为Modal
(MSDN link)。
Modal表单允许您继续在表单中工作,表单底层的任何代码都将继续运行,但调用表单的主代码将被“阻止”。
如果在暂停期间修改了基础Excel工作表,您可以在检测到按钮按下时(即当窗体关闭或按下MsgBox OK
按钮时)添加代码以更新相关表格的一部分。
但我们已经从最初的简单问题和许多其他因素(例如在表格打开时如何修改基础表格)中发挥作用。
答案 1 :(得分:0)
{{1}}