隐藏后如何返回或重新显示Userform?

时间:2013-11-19 10:01:12

标签: vba excel-vba excel-2010 excel

我在UserForm2的一个命令按钮中有这个代码:

 Private Sub CButton1_Click()
     UserForm1.Show
     Me.Hide
 End Sub

现在显示Userform1 然后我在Userform1的一个命令按钮中有另一个代码:

 Private Sub CButton2_Click()
     UserForm2.Show
     Unload Me
 End Sub

这引发了一个:

  

运行时错误:已显示表单;无法以模态显示

我该如何正确地做到这一点?
如何在隐藏或卸载之后返回上一个Userform

2 个答案:

答案 0 :(得分:4)

我认为问题在于陈述的顺序。我通过使用调试器发现,当我在隐藏或卸载之前使用Show语句时,这些最后一个都不会被执行。

试试这个

' on UserForm2
Private Sub CommandButton1_Click()
    Me.Hide
    UserForm1.Show
End Sub

' on UserForm1
Private Sub CommandButton1_Click()
    Me.Hide
    UserForm2.Show
End Sub

答案 1 :(得分:3)

更改为:

Private Sub CButton1_Click()
   Me.Hide
   UserForm1.Show
   Unload Me
End Sub

Private Sub CButton2_Click()
   Me.Hide
   UserForm2.Show
   Unload Me
End Sub