【VBA】複数のシートをまとめて新規ブックへコピーする

シートの操作では1つのシートをコピーしたりすることが多いですが、複数のシートをコピーするのはどうやるのでしょうか?ある関数を使えば、簡単にできますよ!
複数シートのコピー
早速本題からですが、複数のワークシートをコピーするにはArray関数を使います。
Array関数は、引数に指定した要素を配列にしてバリアント型で返す関数で、
変数名 = Array(要素1, 要素2, 要素3, ……)
というように使ったりします。
と言ってもわかりにくいと思いますので、実際に複数のシートをコピーするにはどうすればいいかというと…下の1行でOKです。
Worksheets(Array(1, 2, 3)).Copy
Arrayの()で囲っている部分に、コピーしたいシート番号を入れます。この場合は、1番目から3番目までのシートを新規ブックへコピーします。
もちろん指定するシート番号は連番でなくとも構いませんし、シート名でもできます。例えば、下のようなブックの場合

Worksheets(Array(”仙台", “名古屋")).Copy
と書いて実行すると

指定した2つのシートをコピーした新規ブックが作成されます。
これで、複数シートのコピーはばっちりですね!