我在工作簿中有一个用户表单" main.xlsm"打开工作簿时打开,在这个用户窗体上我有一个按钮,打开另一个工作簿" test1.xlsm"。在" test1.xlsm"工作簿我有一个打开工作簿时打开的用户窗体,在这个用户窗体上我有一个关闭此工作簿并保存它的按钮。这个想法是在关闭来自" test1.xlsm"我应该从" main.xlsm"回到userfom,但是在Workbooks("test1.xlsm").Close
行,它会关闭所有打开的用户表单
这是" main.xlsm"中用户形式按钮的代码。 :
Private Sub CommandButton1_Click()
Workbooks.Open ("D:\test1.xlsm")
End Sub
这是" main.xlsm"中用户形式按钮的代码。 :
Private Sub SaveButton1_Click()
Workbooks("D:\test1.xlsm").Close SaveChanges:=True
End Sub
答案 0 :(得分:0)
也许你在像这样的新实例中打开test1
Private Sub CommandButton1_Click()
Dim xl As New Application
With xl
.Visible = True
.Workbooks.Open ("D:\Test1.xlsm")
.Quit
End With
End Sub
答案 1 :(得分:0)
在excel论坛上提出此问题后,我得到了将每个表单的ShowModal
属性更改为ShowModal FALSE
的建议。所以我将这个参数添加到ThisWorkbook
中的代码中:
UserForm1.Show vbModeless
在两个用户表单中都有效。