ワークシートの追加

広告

ワークシートを追加します。追加する位置と追加する枚数を指定できます。

ワークシートへの追加はWorksheetsコレクションに対して「Add」メソッドを使います。

Worksheets.Add After:=Worksheets(1)

追加する位置は既にあるシートの前又は後という形で指定します。「Before」引数を使う場合には指定したワークシートの前(左側)に追加されます。「After」引数を使う場合には指定したワークシートの後(右側)に追加されます。どちらもWorksheetオブジェクトを設定する値に使います。

Worksheets.Add Before:=Worksheets("Sheet2")

「Before」も「After」も指定しない場合には、現在のアクティブシートの前に追加されます。

また追加する枚数も指定できます。デフォルトでは1枚ですが「Count」引数で追加する枚数を指定できます。

Worksheets.Add Before:=Worksheets("Sheet2"), Count:=2

サンプルプログラム

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

下記のようなExcelのファイルを用意します。

ワークシートの追加

先頭のシートの前に1枚追加し、「Sheet2」シートの後ろに2枚追加してみます。

testsheetedit1.bas

Sub テスト()

    Worksheets.Add Before:=Worksheets(1)
    Worksheets.Add After:=Worksheets("Sheet2"), count:=2

End Sub

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

ワークシートの追加

まず1枚目が「Sheet1」シートの前に追加されます。そして「Sheet2」シートの後ろに2枚追加されます。2枚追加される時ですが、「Sheet5」シートがまず追加されさらに「Sheet6」シートが(「Sheet2」シートの後ろに)追加されています。つまり2枚同時に追加されるのではなく、1枚ずつ2回追加されるようです。

Excel VBA入門の他の記事を見てみる

( Written by Tatsuo Ikura )