Besser wäre da eine ADODB.Connection 
	Mit einem Excel4Macroaufruf wirst du nicht wirklich glücklich. 
	OK, kannst ja wiederholen, wie im Beispiel, nur 
	Es wird immer ein Wert zurückgegeben, eben auch <0> für Wert/Ergebnis = 0  oder leer 
	Willst du eine Schleife über 16384 Aufrufe, dann kannst du auch eine ganze Zeile erfassen :O 
Sub TestIt()
Dim ZielZeile As Long, QuellZeile As Long
Dim ZielSpalte As Long, Quellspalte As Long
Dim Pfad As String, Quelle As String, Tabelle As String, Bezug As String
Dim varElm As Variant
ZielZeile = 20: QuellZeile = 20
ZielSpalte = 1: Quellspalte = 1
'TestPfad anpassen! ***********************************************************
Pfad = "E:\Temp\": Quelle = "Flexible_Budget_2016 (4).xlsx": Tabelle = "900101"
'in die aktuelle Mappe, aktuelle Tabelle
With ThisWorkbook.ActiveSheet
   Do
      varElm = _
         GetValue(Pfad, Quelle, Tabelle, .Cells(QuellZeile, Quellspalte).Address(0, 0))
      If varElm <> 0 Then
         .Cells(ZielZeile, ZielSpalte).Value = varElm
         Quellspalte = Quellspalte + 1
         ZielSpalte = ZielSpalte + 1
      Else
         Exit Do
      End If
   Loop
End With
End Sub
	  
	  
     |