マクロは、ブック内の情報を処理するためによく使用されます。セルを含むワークシートが非表示になっていない限り、マクロはブック内の任意のセルにアクセスできます。ワークシートを非表示にすると、通常のマクロ操作からも非表示になります。

その結果、マクロを実行して非表示のワークシートの情報にアクセスできるようにする場合は、最初にワークシートを「再表示」する必要があります。これを行うには、マクロで次のコード行を使用します。

Sheets("My Hidden Sheet").Visible = True

この行が実行されると、My HiddenSheetという名前のワークシートが非表示になりなくなります。その後、SelectionオブジェクトまたはSelectメソッドを使用して簡単にアクセスできます。後でワークシートを再び非表示にする準備ができたら(処理が完了したら)、次のコード行を使用します:

Sheets("My Hidden Sheet").Visible = False

もちろん、ワークシートを非表示にしたり、後で非表示にしたりすると、Excelがマクロで実行されたコマンドに基づいて画面表示を更新しようとするため、画面が大量に点滅する可能性があります。これを回避したい場合は、マクロの先頭で次のコード行を使用してください。

Application.ScreenUpdating = False

このように画面の更新をオフにすると、ワークシートの非表示を解除して後で再非表示にしたことを誰も知ることができなくなります。ただし、マクロを終了する前に、ScreenUpdatingプロパティをTrueに戻していることを確認してください。

また、Selectionオブジェクト(およびSelectメソッド)だけが情報にアクセスする方法ではないことを忘れないでください。代わりに、範囲の操作(Rangeメソッドを使用するか、Rangeメソッドを使用してオブジェクトを定義する)に依存している場合は、非表示のワークシートの情報を表示せずに簡単にアクセスできます。

注:

このページ(または_ExcelTips_サイトの他のページ)で説明されているマクロの使用方法を知りたい場合は、役立つ情報を含む特別なページを用意しました。

link:/ excelribbon-ExcelTipsMacros [ここをクリックして、新しいブラウザタブでその特別なページを開きます]

_ExcelTips_は、費用効果の高いMicrosoftExcelトレーニングのソースです。

このヒント(2548)は、Microsoft Excel 97、2000、2002、および2003に適用されます。Excel(Excel 2007以降)のリボンインターフェイス用のこのヒントのバージョンは、次の場所にあります。

link:/ excelribbon-Running_Macros_on_Hidden_​​Worksheets [非表示のワークシートでマクロを実行する]