再表示不可の設定でシートを非表示
シートの表示非表示を設定 3行マクロ 53回
再表示させない設定でシートを非表示にする
Excelでは、特定のシートを非表示にして、重要なデータが入力されているシートを一時的に隠すことができます。
ただし、再表示することができるとわかっている人には、簡単に表示されてしまいます。
どうしても非表示にしておきたい時には、これでは困りますね。
そこで、今回の3行マクロでは、再表示させないように設定することにします。
(サンプルファイルは、こちらから 3行マクロ53回サンプルデータ)
Excelバージョン:
Worksheet.Visible プロパティ
シートの表示非表示は、WorksheetオブジェクトのVisibleプロパティをTRUEかFALSEに設定することで操作できます。
再表示不可で非表示にしたいときは、プロパティに定数 xlVeryHidden を設定します。

再表示不可で非表示にしたいときは、プロパティに定数 xlVeryHidden を設定します。

Sheet2を非表示にする時は、

Sub シート非表示() Worksheets("Sheet2").Visible = False End Sub

シート2が非表示になりました。


再表示したい時は、

Sub シート表示() Worksheets("Sheet2").Visible = True End Subあるいは、シートタブ上で右クリックして表示されるメニューから、再表示を選択しても表示されます。

再表示不可ならVisible プロパティに xlVeryHidden
再表示をさせたくない時は、Visible プロパティに定数 xlVeryHidden を設定します。

Sub シート非表示再表示不可で() Worksheets("Sheet2").Visible = xlSheetVeryHidden End Subこの場合は、再表示が不可なので、右クリックしても再表示のメニューがグレーで選択できません。

マクロがわかると非表示のシートを見ることができる
グレーアウトしていても、マクロのコードを勉強したことのある人なら、非表示のシートを見ることができるかもしれません。VBAを開いて、イミディエイトウィンドウに下記のようなコードを書くだけで、表示されてしまうからです。


対策として、非表示にしたい、シートのシートモジュールにイベントプロシージャを記述します。

Private Sub Worksheet_Activate() Sheets("Sheet2").Visible = xlVeryHidden End Sub

すると、シートを再表示にして選択しようとすると、シートをアクティブにするときに、イベントのマクロが実行されます。結果シートは再び非表示になります。

