枚数を指定してシートをコピーするマクロ
マクロ講座 48回の後半
枚数を指定してシートをコピーするマクロ
Excelの作業では、よく使う表のひな形のシートを作って、必要枚数コピーするというような作業は日常よくあります。
そのような時に、マクロを使って一発で必要枚数をコピーできたら便利です。
今回は、必要枚数を指定してシートをコピーするマクロを作成します。
(サンプルファイルは、こちらから 2013マクロ講座26回サンプルデータ)
コピーを必要枚数分繰り返す
For〜Nextステートメントで、 決められた回数の繰り返しを行うことができます。
For〜Nextステートメントの使い方
最初に、Forで繰り返し回数を宣言します。
繰り返し回数は、カウンタの変化範囲(開始値と終了値)で指定します。

For〜Nextステートメントの使い方
最初に、Forで繰り返し回数を宣言します。
繰り返し回数は、カウンタの変化範囲(開始値と終了値)で指定します。

For〜Next が実行されると、カウンタの値が開始値から1ずつカウントアップされ、終了値に達すると繰り返しが終了します。
カウンタ変数は今回は習慣的にiとします。
終了値も変数にして、ユーザーがInputBoxに入力した値にします。終了値はcntとしました。

カウンタ変数は今回は習慣的にiとします。
終了値も変数にして、ユーザーがInputBoxに入力した値にします。終了値はcntとしました。

コードにまとめると、以下のようになります。

Sub 枚数指定コピー()
Dim i As Integer
Dim cnt As Integer
cnt = Application.InputBox(Prompt:="枚数を入力", _
Title:="枚数指定", Type:=1)
For i = 1 To cnt
Worksheets("テンプレート").Copy After:=Worksheets(i)
ActiveSheet.Name = i
Next i
End Sub

マクロを実行すると、ダイアログボックスが表示される
マクロを実行すると、ダイアログボックスが表示されるので、入力欄にコピーしたい数値を入力します。


指定した3枚のコピーがテンプレートの後ろに作成されました。


スポンサーリンク
スポンサーリンク