当用户单击提交按钮并完成操作时,我需要使用VBA关闭Excel用户窗体。
如何从用户窗体本身关闭一个用户窗体?
我已经尝试过这个方法,但它返回一个361错误。
Unload Me
当用户单击提交按钮并完成操作时,我需要使用VBA关闭Excel用户窗体。
如何从用户窗体本身关闭一个用户窗体?
我已经尝试过这个方法,但它返回一个361错误。
Unload Me
如置顶答案所述,我在按钮控件的代码后面使用了以下内容。
Private Sub btnClose_Click()
Unload Me
End Sub
在这样做时,它不会尝试卸载控件,而是卸载包含按钮控件的用户窗体。"Me"关键字指的是用户窗体对象,即使从用户窗体上的控件调用也是如此。如果您使用此技术时遇到错误,可能有几个可能的原因。
您可能将代码输入到了错误的位置(例如单独的模块)
您可能正在使用旧版本的Office。我正在使用Office 2013。我注意到VBA随着时间而改变。
从我的经验来看,DoCmd.... 方法更具体地适用于MS Access中的宏功能,但在Excel VBA中并不常用。
在正常(开箱即用)条件下,上述代码应该能够正常工作。
没有看到您的完整代码,无法确定地回答。通常在尝试卸载控件而不是窗体时会出现错误。
请确保您没有在括号中使用"me"。
此外,如果您可以发布用户窗体的完整代码,则会极大地帮助。
Unload Me只有在从用户窗体自身调用时才起作用。如果您想要从另一个模块代码(或用户窗体)关闭窗体,则需要使用Unload函数+要关闭的用户窗体名称。
希望这有所帮助。
需要注意的是,如果您在用户表单上将按钮分组在一起,即使您打算点击的按钮不同,它也可以链接到组中的另一个按钮。