ワークシートの追加

Excel VBA を使ってワークシートを追加する方法を解説します。追加する位置と追加する枚数を指定できます。

(Last modified: )

ワークシートを追加する

ワークシートへの追加は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枚追加してみます。

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 )

プロフィール画像

著者 / TATSUO IKURA

これから IT 関連の知識を学ばれる方を対象に、色々な言語でのプログラミング方法や関連する技術、開発環境構築などに関する解説サイトを運営しています。