複数のシートを一度に選択する

シートを選択する場合、Worksheetオブジェクトに対して「Select」メソッドを実行しますが、複数のワークシートに対してまとめて「Select」メソッドを実行することが出来ます。ここでは Excel VBA を使って複数のシートを一度に選択する方法について解説します。

(Last modified: )

複数のシートを一度に選択する

Worksheetオブジェクトを取得する際に、Applicationオブジェクトの「Worksheets」プロパティなどを使いますが、今までのサンプルではインデックス番号かワークシート名を1つだけ記述していました。

Worksheets(1).Select
Worksheets("Sheet1").Select

複数のワークシートを対象にする場合にはArray関数を使って複数のインデックス番号やシート名を同時に指定します。

Worksheets(Array(1, 2, 3)).Select
Worksheets(Array("Sheet1", "Sheet2", "Sheet3")).Select

このようにArray関数を使ってインデックス番号又はシート名を複数指定することで、複数のワークシートを対象とすることが出来ます。(Array関数については『Array関数で一度に値を格納する』を参照して下さい)。

サンプルプログラム

では簡単なサンプルで試してみましょう。

Sub テスト()

    Worksheets(Array(1, 3)).Select
    
End Sub

上記マクロを実行すると次のようになります。

複数のシートを一度に指定して選択する

左から1枚目と3枚目のシートを一度に選択しています。

-- --

Excel VBA を使って複数のシートを一度に選択する方法について解説しました。

( Written by Tatsuo Ikura )

Profile
profile_img

著者 / TATSUO IKURA

プログラミングや開発環境構築の解説サイトを運営しています。