OfficeType

VBA~シートを非表示にしよう~Excel

VBAでワークシートを非表示にしたい時はWorksheets.Visibleプロパティを使います。

手動で再表示可能な非表示

Worksheets.VisibleプロパティにFalseを設定するとシートが非表示になります。この非表示はシートの見出し上で右クリックから再表示を選択すると再表示が可能です。Worksheets.VisibleプロパティにTrueを設定するとシートが表示されます。

下のコードを実行するとSheet1が非表示になります。

image-01

image-02

Sub test1()

Worksheets("Sheet1").Visible = False

End Sub

手動で再表示ができない非表示

手動で再表示ができない非表示を設定したい場合Worksheets.VisibleプロパティにxlVeryHiddenを設定します。この非表示はシートの見出し上で右クリックから再表示を選択しても再表示することができません。再表示したい場合はWorksheets.VisibleプロパティにTrueを設定します。

下のコードを実行するとSheet1が非表示になります。

image-03

image-04

Sub test2()

Worksheets("Sheet1").Visible = xlVeryHidden

End Sub

複数のシートを非表示にする

複数のシートを非表示にしたい場合はWorksheets("シート名")のシート名をArray関数にまとめて格納することで非表示にできます。

下のコードを実行するとSheet1、Sheet2が非表示になります。Array関数にカンマ区切りでシート名を入力すれば、さらに複数のシートを非表示にすることが可能です。

image-05

image-06

Sub test3()

Worksheets(Array("Sheet1", "Sheet2")).Visible = False

End Sub