VBA ワークシートの非表示と表示




ステートメント構文など
Worksheets.Visible = False

ワークシートの非表示、表示をコントロールするプロパティです。
Worksheets.Visible = Falseで非表示に
Worksheets.Visible = Trueで表示に出来ます。

Excel2007以降ではプロパティが追加されており、エクセル上では表示に出来ないパターンでの非表示化が出来るようになりました。

XlSheetVisibility 列挙
名前 説明
True 表示する
False 非表示にする
xlSheetHidden 0 Trueと同じ
xlSheetVeryHidden 2 エクセル上では表示に変更できないように非表示にする
xlSheetVisible -1 Falseと同じ


サンプルコード
Sub wsv()
    'Sheet1を表示に変更
    Worksheets("Sheet1").Visible = True
    
    'Sheet1を非表示に変更
    Worksheets("Sheet1").Visible = False
    
    'Sheet1を非表示に変更
    Worksheets("Sheet1").Visible = xlSheetHidden
    
     'Sheet1を表示に変更
    Worksheets("Sheet1").Visible = xlSheetVisible

     'エクセル上では変更出来ない非表示状態
    Worksheets("Sheet1").Visible = xlSheetVeryHidden
    
End Sub


xlSheetVeryHiddenで非表示にした場合はエクセル画面下のシートタブ上で右クリックしても表示する選択が出てきません。VBAで[Visible = True]もしくは[Visible = xlSheetVisible]が実行された場合のみ表示されます。