vbaexceluserforminvisible

Specific workbook invisible Excel VBA


I am writing a script in Excel VBA where the Workbook is supposed to open with a UserForm. I want only the UserForm to be visible and the excel window itself to be invisible. As such, I have written the following code for the opening of the 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

I realize that I have set the whole Excel application to be invisible. In this sense, what happens now is that when I have other Excel workbooks open, they turn invisible as soon as I open this one. How could I make it so that this setting only applies to this specific workbook? Thank you


Solution

  • There is a choice to be made here:

    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
    

    More detail in this SO question