Private Function GetInfoFromClosedFile(ByVal wbPath As String, _
wbName As String, wsName As String, cellRef As String) As Variant
Dim arg As String
GetInfoFromClosedFile = ""
If Right(wbPath, 1) <> "\" Then wbPath = wbPath & "\"
If Dir(wbPath & "\" & wbName) = "" Then Exit Function
arg = "'" & wbPath & "[" & wbName & "]" & _
wsName & "'!" & Range(cellRef).Address(True, True, xlR1C1)
On Error Resume Next
GetInfoFromClosedFile = ExecuteExcel4Macro(arg)
End Function
Delete the code from your workbook object Questionaire. Insert a Module or add to the workbook object:
[VBA]Sub test()
Dim soValue8 As Variant
Dim sourceData(1) As Variant
soValue8 = GetInfoFromClosedFile(Questionaire.Path, "Source.xlsx", "Sheet1", "B2")
sourceData(1) = soValue8
Questionaire.Worksheets("Sheet1").Range("C5").Value2 = sourceData(1)
End Sub
Private Function GetInfoFromClosedFile(ByVal wbPath As String, _
wbName As String, wsName As String, cellRef As String) As Variant
Dim arg As String
GetInfoFromClosedFile = ""
If Right(wbPath, 1) <> "\" Then wbPath = wbPath & "\"
If Dir(wbPath & "\" & wbName) = "" Then Exit Function
arg = "'" & wbPath & "[" & wbName & "]" & _
wsName & "'!" & Range(cellRef).Address(True, True, xlR1C1)
On Error Resume Next
GetInfoFromClosedFile = ExecuteExcel4Macro(arg)
End Function
[/VBA]
I have tried the code and it worked for few data but it again failed for few data. It filled the cell with "#VALUE!"
Failed Data was:
CMC<YYYYMMDD><X>.ele, CMC<YYYYMMDD-1><X>.ele, CMC<YYYYMMDD-2><X>.ele, CMC<YYYYMMDD-3><X>.ele, CMC<YYYYMMDD-4><X>.ele
X: X can be {A, B, C, D, E , F}
CMC<YYYYMMDD><X>.pap, CMC<YYYYMMDD-1><X>.pap, CMC<YYYYMMDD-2><X>.pap, CMC<YYYYMMDD-3><X>.pap, CMC<YYYYMMDD-4><X>.pap
X: X can be {A, B, C, D, E , F}
CMC<YYYYMMDD>A<X>.CNT, CMC<YYYYMMDD-1>A<X>.CNT, CMC<YYYYMMDD-2>A<X>.CNT, CMC<YYYYMMDD-3>A<X>.CNT, CMC<YYYYMMDD-4>A<X>.CNT
X: X can be {A, B, C, D, E , F, G, H, I, J}