Sub CopyDataFromExcelFile()
Dim filePath As String
Dim wb As Workbook
Dim wsSource As Worksheet
Dim wsTarget As Worksheet
Dim sourceRange As Range
Dim targetRange As Range
' ファイルを選択
filePath = Application.GetOpenFilename("Excel Files (*.xls; *.xlsx), *.xls; *.xlsx")
If filePath = "False" Then
MsgBox "ファイルが選択されていません。"
Exit Sub
End If
' ワークブックを開く
Set wb = Workbooks.Open(filePath)
' ソースシートとターゲットシートを指定
Set wsSource = wb.Sheets("Sheet1")
Set wsTarget = ThisWorkbook.Sheets("Sheet1")
' コピー元の範囲を指定
Set sourceRange = wsSource.Range("A1:H20")
' コピー先の範囲を指定
Set targetRange = wsTarget.Range("A1:H20")
' データをコピー
sourceRange.Copy Destination:=targetRange
' ワークブックを閉じる
wb.Close SaveChanges:=False
End Sub