
『Microsoft Excel』(以下Excel、エクセル)の中の機能としてある[VBA] について基本的な説明をしていきます。
仕事の改善や個人的な知識向上に役立ててください(^o^)
第15回目の今回は
シートのコピー機能
について解説していきますので、よろしくお願いします。
前回までのVBAに関するINDEXは下記を参照してくださいね。
↓サブログ内部リンク(VBA用INDEX)↓
-
-
目次
Excel VBA講座-目次(INDEX)
サブローExcel VBAに関する説明を今後増やして行く予定なので、各リンクに飛ぶような目次(INDEX)を作りました。 随時更新していくので、よろしくお願いします。 スラスラ読めるExcel VBA ...
続きを見る
シートのコピー
<書式>
オブジェクト.Copy([Before],[After])
<説明>
シートをコピーします。コピー先は、引数のBefore、またはAfterで指定します。
対象:
Worksheetオブジェクト
引数:
Before:指定したシートの前に、対象のシートをコピーします。
After:指定したシートの後ろに、対象のシートをコピーします。
なし:省略すると、新しいブックにコピーします。
新しいブックへのコピー
<コード記入例1>
Sub シートコピー()
'worksheetのsample1のsheetを新しいブックにコピーします。
Worksheets("sample1").Copy
’マクロを終了する
End Sub
<マクロ実行結果>
特定シートの後ろにコピー
<コード記入例2>
Sub シートコピーa()
'worksheetの"sample1"のsheetを"abc"のシートの後ろにコピーします。
Worksheets("sample1").Copy After:=Worksheets("abc")
’マクロを終了する
End Sub
<マクロ実行結果>
※コピーしたら同じ名前のものが2つできるので、コピーしたシート名末尾に(2)がつく。(2)がすでにあれば(3)ができる(その繰り返し)
特定シートの前にコピー
<コード記入例3>
Sub シートコピーb()
'worksheetの"sample1"のsheetを"abc"のシートの前にコピーします。
Worksheets("sample1").Copy Before:=Worksheets("abc")
’マクロを終了する
End Sub
<マクロ実行結果>
※コピーしたら同じ名前のものが2つできるので、コピーしたシート名末尾に(2)がつく。(2)がすでにあれば(3)ができる(その繰り返し)
一番右のシートの後ろにコピー
<コード記入例3>
Sub シートコピーc()
'worksheetの"sample1"のsheetを一番右のシートの後ろにコピーします。
Worksheets("sample1").Copy Aefter:=Worksheets(Worksheets.Count)
’マクロを終了する
End Sub
<マクロ実行結果>
※コピーしたら同じ名前のものが2つできるので、コピーしたシート名末尾に(2)がつく。(2)がすでにあれば(3)ができる(その繰り返し)

下のVBA講座も是非ご覧下さい!!
関連
前回のVBA講座(第14回)
繰り返し処理(For~Next)を極める!【VBA入門講座#14】
関連
次回のVBA講座(第16回)