【VBA】シートを別ブックにコピーする方法

今回はシートをコピーする方法を紹介します。
また、シートを別のブックにコピーする方法についても併せて説明します。
シートをコピーする方法
Sub CopySht()
'''シートをコピーする
'コピーしたいシート
Dim shtCopy As Worksheet
Set shtCopy = ActiveWorkbook.Sheets(1)
'シート(1)の後ろにコピー
shtCopy.Copy After:=ActiveWorkbook.Sheets(1)
End Sub
シートのコピーはCopyメソッドを使って行います。
コピーしたいシート.Copyとし、その後にAfterプロパティでどのシートの後ろにコピーするかを指定します。
サンプルコードでは1つ目のシートの後ろにコピーしています。
シートを別のブックにコピーする方法
Sub CopyToOtherBook()
'''シートを別のブックにコピーする
'コピーしたいシート
Dim shtCopy As Worksheet
Set shtCopy = ActiveWorkbook.Sheets(1)
'コピー先のブック
Dim wbOther As Workbook
Set wbOther = Workbooks("コピー先のブック名")
'コピー先ブックのシート(1)の後ろにコピー
shtCopy.Copy After:=wbOther.Sheets(1)
End Sub
別のブックにコピーしたい場合もCopyメソッドを使って行います。
別のブックにコピーする場合の違いはAfterプロパティの指定についてです。 このAfterプロパティに、コピー先のブック内のシートを指定すれば別のブックにもコピーすることができます。
≪関連記事≫
シートをコピーして、そのまま別ブックとして保存するコードも紹介しています。