vba中使用多窗体时,如何让下一个窗体显示时,让前一个窗体关闭或是不显示?即始终只有一个窗体显示。

用UserForm.Hide不好用。

给你说个例子你试试
新建一个excel工作薄
Alt+F11打开VBA编辑窗口
在左边列表点击右键 选插入用户窗体两次 这样就获得了两个用户窗体
userform1 和userform2
在左边列表userform1上单击右键选查看代码 打开userform1的代码窗口
粘贴以下代码
Private Sub UserForm_Click()
UserForm1.Hide
UserForm2.Show
End Sub

在左边列表userform2上单击右键选查看代码 打开userform2的代码窗口
Private Sub UserForm_Click()
UserForm1.Show
UserForm2.Hide
End Sub

然后双击sheet1工作表 会打开工作表的代码窗口粘贴以下代码
Sub aa()
UserForm1.Show
End Sub
回到工作表 执行 aa 宏
然后点击显示的用户窗体.注意观察用户窗体标题的变化追问

对头!
我把两行代码写反了。写成
userform2.show
userform1.hide
了。
谢谢你了。

温馨提示:答案为网友推荐,仅供参考
第1个回答  2019-01-01
先关闭,后打开,要控制第二个Form打开方式才行,例如:
UserForm2.Hide
UserForm1.Show 1
第2个回答  2012-03-18
if Form2 true
then form1 flash追问

这个通吗?在VBA里面不行。

第3个回答  2012-03-18
form1.end追问

没有这个方法。

追答

Form.Hide

追问

唉。就不能仔细看看我的提问吗。

相似回答