一度に複数のシートを非表示および再表示する必要がある状況を考えてみます。誰かが手動で非表示および再表示を解除している場合、これには多くの時間がかかります。

この記事では、VBAコードを使用して複数のタブを動的に非表示または再表示する方法を学習します。

Q):ある時点で複数のタブを非表示または再表示するマクロが必要です。

以下は、2つの動的リスト(タブの非表示とタブの再表示)が存在するsheet1のスナップショットです

img1

  • アイデアは、[非表示]または[再表示]ボタンをクリックすると、リストされたシートが非表示または再表示されるはずです。次の手順に従う必要があります。

結果を得るには、VBエディターを起動する必要があります。[開発者]タブをクリックします。* [コード]グループから[VisualBasic]を選択します

img2

  • [挿入]をクリックしてから[モジュール]をクリックします

img3

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

モジュールに次のコードを入力しますSubHideTabs()Dim TabNo As DoubleDim LastTab As Double LastTab = Range( “Hide_TabsDNR”)。Count On Error Resume Next For TabNo = 2 To LastTab Sheets(Range( “Hide_TabsDNR”)(TabNo)) .Visible = False Next TabNo On Error GoTo 0 Sheets(1).Select End Sub

===

Sub UnHideTabs()

Dim TabNo As Double

Dim LastTab As Double

LastTab = Range( “Hide_TabsDNR”)。Count

エラー時に次を再開

TabNo = 2からLastTabへ

Sheets(Range( “UnHide_TabsDNR”)(TabNo))。Visible = True

次のTabNo

エラー時GoTo0

Sheets(1).Select

サブの終了

img4

  • マクロを実行する準備が整いました。[非表示]ボタンをクリックすると、リストされているすべてのシートが非表示になります。スナップショットの下を参照してください

img5

  • 同じように、[再表示]ボタンをクリックすると、列Dに記載されているすべての非表示のシートが再表示されます。

このようにして、一度に複数のタブを動的に非表示または再表示できます。