この記事では、VBAコードを使用して複数のシートを非表示にする方法を学習します。

例を挙げて理解しましょう:

{空} Q)Excelブックに約100枚あります。 sheet1のみがユーザーに表示され、残りは非表示になります。ユーザーが右クリックしてシートを再表示したくないのです。

[開発者]タブをクリックします。[コード]グループから、[VisualBasic]を選択します

img1

[挿入]、[モジュール]の順にクリックします

img2

これにより、新しいモジュールが作成されます。

モジュールに次のコードを入力します

Sub HideSheets()

ワークシートとして薄暗い

ThisWorkbook.WorksheetsのEachshの場合

If sh.Name <> “Sheet1” Then

sh.Visible = xlSheetVeryHidden

終了If

次へ

サブの終了

img3

上記のコードは各ワークシートの名前をチェックし、「Sheet1」以外の名前が見つかった場合は、シートを実行して非表示にします。

マクロを実行した後; Sheet1が表示され、残りは非表示になります。

100枚のシートのうちsheet1とsheet2のみを表示できるようにするには、次のコードが必要です

Sub HideSheets2()

ワークシートとして薄暗い

ThisWorkbook.WorksheetsのEachshの場合

If sh.Name <> “Sheet1” Then

sh.Visible = xlSheetVeryHidden

終了If

その他

If sh.Name <> “Sheet2” Then

sh.Visible = xlSheetVeryHidden

終了If

次へ

サブの終了

HideSheet2マクロは「Sheet1」と「Sheet2」を非表示にせず、他のすべてのシートが非表示になるようにします。

このようにして、ユーザーに表示させたくないシートを非表示にすることができます。