ワークシートの表示・非表示は Visible プロパティで設定することができます。このプロパティは値の取得・設定が可能です。値は True / False の他に XlSheetVisibility クラスの定数を設定することができます。
一部のワークシートメソッド(Copy、Move など)は、ワークシートが非表示のままで実行するとエラーとなります。この場合は一旦シートを表示⇒メソッド実行⇒シートを非表示という手順で対処してください。
Visibleプロパティの使用方法
定数 | 値 | 説明 |
---|---|---|
True | -1 | シートを表示します。 |
False | 0 | シートを非表示にします。 ユーザー側でシートを再表示することができます。 |
xlSheetVisible | -1 | シートを表示します。 |
xlSheetHidden | 0 | シートを非表示にします。 ユーザー側でシートを再表示することができます。 |
xlSheetVeryHidden | 2 | シートを非表示にします。 ユーザー側でシートを再表示することはできません。 |
Visibleプロパティの使用例
ワークシートの非表示(手動再表示可)
ワークシートをマクロで非表示(False)にします。その後手動で再表示してみます。
Sub sample_eb077_01()
Worksheets("BBB").Visible = False
End Sub
手動でシートを再表示してみます。シート名部分を右クリックしてメニューから 再表示 を選択します。
非表示となっているワークシート”BBB”を選択して OK ボタンを押下します。
マクロで非表示にしたシートを再表示できました。
ワークシートの非表示(手動再表示不可)
ワークシートをマクロで非表示(xlSheetVeryHidden)にします。手動では再表示できないので、マクロで再表示します。
Sub sample_eb077_02()
Worksheets("CCC").Visible = xlSheetVeryHidden
End Sub
シート名部分を右クリックしてみると 再表示 がグレーアウトされ選択できないことがわかります。
※他に手動で再表示可能なシートがあれば 再表示 は選択可能になりますが、その後に表示されるシート一覧ダイアログに xlSheetVeryHidden を設定したシートは表示されません。
このシートを再表示するには以下のマクロを実行します。
Sub sample_eb077_03()
Worksheets("CCC").Visible = True
End Sub
参考 – イミディエイトウィンドウからシートを再表示する
イミディエイトウィンドウからワークシートを表示することができます。ワークシートを表示するのにわざわざマクロを記述したくない(標準モジュールを追加したくない)と思う方はこの方法をとるとよいでしょう。シート名は適宜変更してください。