You need to enable JavaScript to run this app.
最新活动
大模型
产品
解决方案
定价
生态与合作
支持与服务
开发者
了解我们

Corel Draw中点击按钮后用Exit Sub无法关闭Userform的问题求助

解决CorelDraw VBA中Exit Sub无法关闭UserForm的问题

嘿,我完全懂你碰到的这个困惑——Exit Sub从一开始就不是用来关闭UserForm的,它的作用仅仅是终止当前正在执行的子过程,所以哪怕你把它写在代码里,也只会结束CommandButton1_Click这个点击事件的执行,不会对窗体本身有任何关闭操作。

你原来的代码里,MsgBox "Script Ran!"能正常弹出,说明整个过程确实完整运行了,但Exit Sub只是让这个点击事件到此为止,窗体还是会留在界面上。至于你尝试用虚拟变量触发Exit Sub的思路,之所以没用也是因为这个核心问题:Exit Sub本身就不具备关闭窗体的功能,跟条件判断无关。

要实现点击按钮后运行完代码再关闭UserForm,你需要用专门的窗体控制命令:

正确的代码示例

Private Sub CommandButton1_Click()
    MsgBox "Script Ran!"
    Unload Me ' 卸载并关闭当前UserForm
End Sub

补充说明两种常用的窗体关闭方式:

  • Unload Me:彻底卸载当前窗体,释放它占用的内存资源,之后如果要再显示这个窗体,需要重新加载。
  • Me.Hide:只是将窗体隐藏起来,它仍然保留在内存中,后续可以通过UserForm1.Show(替换成你的窗体名称)再次显示它,适合需要复用窗体的场景。

你可以根据自己的需求选择其中一种,替换掉原来的Exit Sub就能实现点击按钮后关闭窗体的效果啦。

内容的提问来源于stack exchange,提问作者Jeremy

火山引擎 最新活动