Excel VBA用户窗体的诺模和模态交互问题

Excel VBA用户窗体的诺模和模态交互问题,excel,vba,modal-dialog,userform,Excel,Vba,Modal Dialog,Userform,我有一个UserForm1,它作为一个菜单,允许启动不同的操作,有些在工作表上,有时在其他表单上。 userForm1不是模态的。UserForm2是模态的。 当从userForm1调用userForm2的实例时,它会正确执行,但当usrForm1调用的过程结束时,它会关闭usrForm1 UserForm1代码 'SET USERFORM1 PROPERTY SHOWMODAL = FALSE Private Sub CommandButton1_Click() Dim f As U

我有一个UserForm1,它作为一个菜单,允许启动不同的操作,有些在工作表上,有时在其他表单上。 userForm1不是模态的。UserForm2是模态的。 当从userForm1调用userForm2的实例时,它会正确执行,但当usrForm1调用的过程结束时,它会关闭usrForm1

UserForm1代码

'SET USERFORM1 PROPERTY SHOWMODAL = FALSE

Private Sub CommandButton1_Click()
    Dim f As UserForm2
    Set f = New UserForm2
    f.Show
    Set f = Nothing
End Sub

UserForm2代码

'SET USERFORM2 PROPERTY SHOWMODAL = TRUE

Private Sub CommandButton1_Click()
    Hide
End Sub

在UserForm1上执行按钮事件时,UserForm2的实例以模态形式显示。当控件返回到UserForm1上的button事件时,它会删除UserForm2的实例,但完成后它也会关闭UserForm1


有什么想法吗?

Set f=Nothing
是多余的,因为下一行的对象超出了范围,但是包含显示userform1的代码可能会很有用。userform1还有其他代码吗?好的,谢谢,这是个好主意。我刚刚从debbuger进行了测试,但是从工作簿\u Open创建UserForm1的实例效果很好。