我正在Excel VBA中编写一个脚本,其中Workbook
应该以{{1}}打开。我希望只有UserForm
可见,而excel窗口本身是不可见的。因此,我已经为开放UserForm
:
Workbook
我意识到我已将整个Excel应用程序设置为不可见。从这个意义上说,现在发生的事情是,当我打开其他Excel工作簿时,一旦打开这个工作簿,它们就会变为不可见。我怎么能这样设置才能使此设置仅适用于此特定工作簿?谢谢
答案 0 :(得分:2)
部分答案:您也可以设置窗口属性.Visible
ThisWorkbook.Windows(1).Visible = False
然而,这不会隐藏应用程序(如果您只打开一个工作簿,将会有一个空的Excel窗口)所以您需要检查第一个
If Application.Workbooks.Count > 1 Then
ThisWorkbook.Windows(1).Visible = False
Else
Application.Visible = False
End If
答案 1 :(得分:1)
可以选择:
Sub HideSheet()
Dim sheet As Worksheet
Set sheet = ActiveSheet
' Hides the sheet but users will be able to unhide it using the Excel UI
sheet.Visible = xlSheetHidden
' Hides the sheet so that it can only be made visible using VBA
sheet.Visible = xlSheetVeryHidden
End Sub
中的更多细节
答案 2 :(得分:0)
你可以做的是以下
private sub workbook_open ()
userform.activate
end sub
然后在用户表单代码中写入
Private sub userform_intialize()
application.screenupdate =false
end sub
现在您只能在启动时看到表单
我不知道如何解决的一个问题是,当您移动窗口时,您仍然会看到旧版本。