How to check if a sheet is hidden or visible using VBA?

To check if an Excel sheet is hidden or visible using VBA, you can examine the `Visible` property of the worksheet. The `Visible` property can have three possible values:

  • `xlSheetVisible` (-1): The sheet is visible.
  • `xlSheetHidden` (0): The sheet is hidden but can be unhidden by the user.
  • `xlSheetVeryHidden` (2): The sheet is hidden and cannot be unhidden by the user through the Excel interface.

Here’s a simple example of how you can check the visibility status of a specific worksheet by using VBA:

Sub CheckSheetVisibility(sheetName As String) Dim ws As Worksheet On Error Resume Next ' In case the sheet does not exist Set ws = ThisWorkbook.Worksheets(sheetName) On Error GoTo 0 ' Reset error handling If ws Is Nothing Then MsgBox "Sheet does not exist." Exit Sub End If Select Case ws.Visible Case xlSheetVisible MsgBox "The sheet is visible." Case xlSheetHidden MsgBox "The sheet is hidden." Case xlSheetVeryHidden MsgBox "The sheet is very hidden." Case Else MsgBox "Unknown visibility state." End Select End Sub

To use this subroutine, simply call it from another macro and pass the name of the worksheet you want to check. For example:

Sub ExampleUsage() Call CheckSheetVisibility("Sheet1") End Sub

This code will display a message box indicating whether the specified sheet is visible, hidden, or very hidden.

Unlock Your Potential

Excel

Basic - Advanced

Access

Access Basic - Advanced

Power BI

Power BI Basic - Advanced

Help us grow the project