已经在互联网上转了一圈,得到的答案与我想的不一样。
问:如何隐藏工作簿并显示用户窗体而不隐藏其他工作簿?
这段代码很好,但是隐藏了其他工作簿。
Application.Visible = False
此代码很糟糕,因为它仍然显示excel应用程序。
Workbooks("Workbook Name.xlsm").Window(1).Visible = False
也不要工作。
ActiveWorkbook.Visible = False
最后,工具方法进入工具>选项>常规选项卡>忽略其他应用程序。我的VBA上没有此选项
这是我使用的代码。
Private Sub UserForm_Initialize()
If Application.Windows.Count > 1 Then
Application.Windows(ThisWorkbook.Name).Visible = False
Else
Application.Visible = False
End If
以及在ThisWorkbook模块中
Private Sub Workbook_Open()
UserForm1.Show
End Sub
答案 0 :(得分:0)
隐藏一本特定工作簿的正确方法是
Application.Windows(ThisWorkbook.Name).Visible = False
其中ThisWorkbook.Name
可以用所需的工作簿名称替换,例如"MyWb.xlsm"
。
如果要隐藏应用程序窗口,则必须使用
Application.Visible = False
现在的诀窍是将它们结合起来
If Application.Windows.Count > 1 Then 'more than one workbook open: Hide workbook only
Application.Windows(ThisWorkbook.Name).Visible = False
Else 'only one workbook open: Hide application
Application.Visible = False
End If