Option Explicit
Sub noibang1()
Dim sFile As String, sSheet As String, sAddr As String
sFile = ThisWorkbook.Path & "\ky1.xlsx"
sSheet = "G000141"
sAddr = "C19:I785"
Range("A1:G767") = GetData(sFile, sSheet, sAddr)
End Sub
Sub noibang2()
Dim sFile As String, sSheet As String, sAddr As String
sFile = ThisWorkbook.Path & "\ky2.xlsx"
sSheet = "G000141"
sAddr = "C19:I785"
Range("I1:O767") = GetData(sFile, sSheet, sAddr)
End Sub
Sub noibang3()
Dim sFile As String, sSheet As String, sAddr As String
sFile = ThisWorkbook.Path & "\ky3.xlsx"
sSheet = "G000141"
sAddr = "C19:I785"
Range("Q1:W767") = GetData(sFile, sSheet, sAddr)
End Sub
Function GetData(sFile As String, sSheet As String, sAddr As String)
Dim pLink As String, iR As Long, iC As Long, Arr
If Len(Dir(sFile)) Then
Arr = Range(sAddr)
pLink = "'" & Replace(sFile, Dir(sFile), "[" & Dir(sFile) & "]") & sSheet & "'!"
For iR = 1 To Range(sAddr).Rows.Count
For iC = 1 To Range(sAddr).Columns.Count
Arr(iR, iC) = ExecuteExcel4Macro(pLink & Range(sAddr).Cells(iR, iC).Address(, , 2))
Next iC
Next iR
GetData = Arr
End If
End Function