How to automatically hide specific worksheets when opening an Excel file?
If you need to hide some specific worksheets automatically when someone opens the workbook, how could you deal with this job in Excel?
Hide a specific worksheet automatically when opening a workbook with VBA code
Hide some specific worksheets automatically when opening a workbook with VBA code
Hide a specific worksheet automatically when opening a workbook with VBA code
If you want to hide one specific worksheet when opening the workbook, you can apply the following VBA code.
1. Hold down the ALT + F11 keys to open the Microsoft Visual Basic for Applications window.
2. In the left Project-VBAProject pane, double click the ThisWorkbook to open a blank Module, and then copy and paste the following code into the Module:
VBA code: Hide a specific sheet when opening a workbook:
Private Sub Workbook_Open()
Sheets("Sheet5").Visible = False
End Sub
Note: In the above code, Sheet5 is the sheet name that you want to hide on open. Please change it to your need.
3. Then save and close this code window, and click File > Save As to save this workbook as Excel Macro-Enabled Workbook format, see screenshot:
4. When you open this workbook next time, please click Enable Content button firstly, and then your specify sheet will be hidden automatically.
Hide some specific worksheets automatically when opening a workbook with VBA code
If there are multiple worksheets needed to be hidden when opening the workbook, here is also a code can help you.
1. First, you should list the sheet names that you want to hide on open in a list of a worksheet, and then go to the Name box to give them a range name-SheetsToHide, and press Enter key, see screenshot:
2. Then hold down the ALT + F11 keys to open the Microsoft Visual Basic for Applications window.
3. In the left Project-VBAProject pane, double click the ThisWorkbook to open a blank Module, and then copy and paste the following code into the Module:
VBA code: Hide some specific worksheets when opening a workbook:
Private Sub Workbook_BeforeClose(Cancel As Boolean)
'Updateby Extendoffice 20161206
Dim ws As Worksheet
For Each ws In Worksheets
ws.Visible = xlSheetVisible
Next ws
End Sub
Private Sub Workbook_Open()
Dim ws As Worksheet
For Each ws In Worksheets
If WorksheetFunction.CountIf([SheetsToHide], ws.Name) > 0 Then
ws.Visible = xlSheetHidden
MsgBox ws.Name & "Has been hidden!", vbInformation, "Kutools for Excel"
Else
ws.Visible = xlSheetVisible
End If
Next ws
Set ws = Nothing
End Sub
Note: In the above code, SheetsToHide is the range name that you have created in step 1.
4. Then save and close this code window, and click File > Save As to save this workbook as Excel Macro-Enabled Workbook format. From now on, when you open this workbook next time, the specified worksheets will be hidden automatically.
Best Office Productivity Tools
Easy to Uninstall Completely | Supports Office/Excel 2007-2021 and 365 | Available in 44 Languages
Kutools for Excel Boasts Over 300 Features, Ensuring That What You Need Is Just A Click Away...
Supercharge Your Spreadsheets: Experience Efficiency Like Never Before with Kutools for Excel
(Full-Featured 30-Day Free Trial)
Office Tab Brings Tabbed interface to Office, and Make Your Work Much Easier
- Enable tabbed editing and reading in Word, Excel, PowerPoint, Publisher, Access, Visio and Project.
- Open and create multiple documents in new tabs of the same window, rather than in new windows.
- Increases your productivity by 50%, and reduces hundreds of mouse clicks for you every day!
