【VBA】ワークシートの追加とテクニック

シートを追加(挿入)する時は、WorksheetsコレクションのAddメソッドを使います。

名前付き引数を使うと、追加するシートの場所や数も指定できます。(応用テクニック参照)

Worksheets.Addメソッドでシートを追加

コード

 

解説

実行すると、アクティブシートの左側に新しいワークシートが追加されます。

ワークシートを追加後は、追加した新しいシートがアクティブな状態となっています。

 

名前付き引数を使った詳細設定

名前付き引数を使うと、追加するシートの挿入位置や、数、タイプを設定できます。

よく使うのは、新しいシートの挿入場所を指定するBeforeとAfterです。

Worksheets.Add([Before], [After], [Count], [Type])

 

名前 省略 説明
Before 指定したシートの直前に、新しいシートを追加。
After 指定したシートの直後に、新しいシートを追加。
Count 追加するシートの数を指定。
未指定の時は1です。
Type 追加するシートの種類を指定。
未指定時はxlWorksheet(ワークシート)です。なので、引数でTypeを指定することはありません。他にXlSheetType定数にxlChart(グラフシート)、xlDialogSheet(ダイアログシート)などがありますが、Worksheetsに追加するとエラーとなります。

 

引数Typeに関しては、説明の意味わからなくてOKです。

ほぼ使うことないので・・・

Before(~の前)、After(~の後ろ)はどちらも挿入場所を指定する引数なので、使う時はどちらか片方だけです。

実際の使い方は、下で紹介している「応用テクニック」の各記事を参考にしてください。

 

 

応用テクニック

新しいワークシートを先頭に追加する

Worksheets.Addで新しいシートを追加する時に、Before:=Worksheets(1)と指定すると、シートの先頭(1番左)に追加されます。

コード

 

【VBA】新しいワークシートを先頭に追加する
Before:=Worksheets(1)でシートを追加 Worksheets.Addで新しいシートを追加する時に、Before:=Worksheets(1)と指定すると、シートの先頭(1番左)に追加されます。 コード 'ワークシート...

 

新しいワークシートを最後に追加する

Worksheets.Addで新しいシートを追加する時に、After:=Worksheets(Worksheets.Count)と指定すると、シートの最後(1番右)に追加されます。

コード

 

【VBA】新しいワークシートを最後に追加する
After:=Worksheets(Worksheets.Count)でシートを追加 Worksheets.Addで新しいシートを追加する時に、After:=Worksheets(Worksheets.Count)と指定すると、シートの最...

 

複数のワークシートをまとめて追加する

Worksheets.Addで新しいシートを追加する時に、「Count:=数値」を指定します。

指定した数値の数だけシートが追加されます。

コード

 

【VBA】複数のワークシートをまとめて追加する
Count:=数値 でシートを追加 Worksheets.Addで新しいシートを追加する時に、「Count:=数値」を指定します。 指定した数値の数だけシートが追加されます。 コード 'ワークシートを2つ追加 Workshee...

 

関連記事

VBAテクニック辞典
成果を出す5つのポイント
VBAテクニック辞典
えくとしょ | 初心者のためのエクセルとVBAの図書館
タイトルとURLをコピーしました