シートを一度に複数追加するには

シートの追加を複数行うには、Sheets.AddメソッドかWorksheets.Addメソッドを必要な回数繰り返すことになります。

なお、シートの追加についての詳細は「VBAでシートの追加を行う」をご参照ください。

ただ追加するだけであれば引数無しのWorksheets.Addメソッドを何度も実行すればいいのですが、シート見出しの一番左にSheet2、Sheet3と連番で追加されるだけなので、シート名を付けたい場合はNameプロパティを設定する必要があります。

以下で紹介するコードは、カンマ区切りのシート名を文字列として引数に渡されると、そのシート名で追加する処理になります。

コード

引数で渡された”aa,bb,cc”のようなカンマで区切られた文字列を元に新規シートを追加するコードです。

前提として、新規するシートはアクティブウィンドウの一番右のシートになります。複数のシートを追加する場合は一番右に追加されていきます。

このコードはわかりやすさを優先するため、あえてエラー処理は入れていません。そのため、引数文字列が不正の場合は異常終了することもあり得ます。

引数文字列が既存シート名と重複しないことを確認してください。引数の文字列のフォーマットは”aa,bb,cc”のように追加するシート名をカンマで区切ります。

 

上の関数を呼び出すコードです。引数に追加するシート名をカンマ区切りで指定します。

実行すると、1、2、3、10、11、13のシートが作成されます。