具体的工作簿不可见的Excel VBA

我正在写一个脚本在Excel VBA Workbook应该打开与UserForm 。 我只想要UserForm是可见的,Excel窗口本身是不可见的。 就这样,我写了下面的代码来打开Workbook

 Private Sub Workbook_Open() 'Application launch Application.Visible = False 'Hide Excel window EnableResize = False Application.DisplayFullScreen = True 'Preset fullscreeen mode Application.CommandBars("Full Screen").Enabled = False 'Hide command bars WelcomeForm.Show 'Show welcome UserForm End Sub 

我意识到,我已经把整个Excel应用程序设置为隐形。 从这个意义上说,现在发生的事情是,当我打开其他Excel工作簿时,只要打开这个工作簿,它们就会变得不可见。 我怎样才能使这个设置只适用于这个特定的工作簿? 谢谢

这里有一个select:

 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 

在这个SO问题的更多细节

部分答案:您也可以设置窗口属性.Visible

 ThisWorkbook.Windows(1).Visible = False 

但是这不会隐藏应用程序(如果您只打开一个工作簿,将会出现一个空的Excel窗口),因此您需要先检查

 If Application.Workbooks.Count > 1 Then ThisWorkbook.Windows(1).Visible = False Else Application.Visible = False End If