はじめに
任意ファイルのシートをコピーします。
プロシジャーの説明
任意のファイル内の任意のシートを現在のワークブックの任意のシートに丸々コピーし、コピー後にそのファイルを閉じます。
サンプル1
Option Explicit
Sub CopySheetToActiveWorkbook()
' -------------------------------------------------------------
' 任意のファイル内の任意のシートを現在のワークブックの任意のシートに
' 丸々コピーし、コピー後にそのファイルを閉じる方法を示しています。
' -------------------------------------------------------------
Dim SourceWorkbook As Workbook
Dim TargetWorkbook As Workbook
Dim SourceSheet As Worksheet
Dim TargetSheet As Worksheet
Dim SourceFilePath As String
Dim SourceSheetName As String
Dim TargetSheetName As String
' 任意のファイルのパスとシート名を設定
SourceFilePath = "C:\Your\Folder\Path\SourceFile.xlsx" ' ソースファイルのフルパス
SourceSheetName = "Sheet1" ' ソースシート名
TargetSheetName = "DestinationSheet" ' コピー先のシート名
' 現在のワークブックを設定
Set TargetWorkbook = ThisWorkbook
' ソースファイルを開く
Set SourceWorkbook = Workbooks.Open(SourceFilePath)
' ソースシートを設定
Set SourceSheet = SourceWorkbook.Sheets(SourceSheetName)
' コピー先のシートを作成
Set TargetSheet = TargetWorkbook.Sheets.Add
TargetSheet.Name = TargetSheetName
' ソースシートの内容をコピー
SourceSheet.Cells.Copy Destination:=TargetSheet.Cells
' ソースファイルを閉じる
SourceWorkbook.Close SaveChanges:=False
MsgBox "シートのコピーが完了しました!"
End Sub