使用卸载我关闭Userform不起作用

Kia*_*ian 23 excel vba excel-vba excel-2010

当用户单击提交按钮并执行操作时,我需要使用VBA关闭Excel用户窗体.

如何从自身关闭Userform?

我试过这个,但它返回361错误.

Unload Me
Run Code Online (Sandbox Code Playgroud)

小智 25

根据最佳答案的说明,我在按钮控件后面的代码中使用了以下内容.

Private Sub btnClose_Click()
    Unload Me
End Sub
Run Code Online (Sandbox Code Playgroud)

在这样做时,它不会尝试卸载控件,而是卸载按钮控件所在的用户表单.即使从用户表单上的控件调用,"Me"关键字也指向用户表单对象.如果您在使用此技术时遇到错误,可能有几个原因.

  1. 您可能在错误的位置输入代码(例如单独的模块)

  2. 您可能正在使用旧版本的Office.我正在使用Office 2013.我注意到VBA会随着时间的推移而发生变化.

根据我的经验,使用DoCmd ....方法更具体到MS Access中的宏功能,但在Excel VBA中并不常用.

在正常(开箱即用)条件下,上面的代码应该可以正常工作.


SWa*_*SWa 11

如果没有看到完整的代码,就无法肯定地回答这个问题.当您尝试卸载控件而不是表单时,通常会发生错误.

确保括号中没有"我".

此外,如果您可以发布用户表单的完整代码,它将有助于大规模.