Hallo,
folgende Aufgabe:
Es gibt mehrere hundert XLS Files in einem Ordner. Aus diesen sollen Daten "extrahiert" werden und in eine Access DB gelegt werden.
Hierzu gibt es 4 Functionen:
FU_1 = Durchlaufen der Ordner Struktur
FU_2 = Excel File in ein Array packen
FU_3 = Daten aus dem Array "extrahieren"
FU_4 = In die DB schreiben
Bei FU_2 bekomme ich sporadisch mal nach 50, mal nach 71, mal nach 91 Files die Fehlermeldung:
Das Problem scheint sich zu lösen wenn ich Excel neustarte, dann läuft er wieder sporadisch weiter...
Hier noch FU_2:
Function ClosedExcelFileToArray(Pfad As String, Tabelle As String) As Variant
Dim cn As ADODB.Connection, rs As ADODB.Recordset
Dim sql As String
Dim Data1 As Variant, Data2 As Variant
Dim z As Long, s As Long
Set cn = New ADODB.Connection
Set rs = New ADODB.Recordset
sql = "SELECT * FROM [" & Tabelle & "$]"
cn.Open "Driver={Microsoft Excel Driver (*.xls, *.xlsx, *.xlsm, *.xlsb)}; DBQ=" & Pfad
rs.Open sql, cn
Data1 = rs.GetRows
rs.Close
cn.Close
ReDim Data2(UBound(Data1, 2) + 1, UBound(Data1, 1) + 1)
For z = 0 To UBound(Data1, 2)
For s = 0 To UBound(Data1, 1)
Data2(z + 1, s + 1) = Data1(s, z)
Next
Next
ClosedExcelFileToArray = Data2
End Function
Wäre echt toll wenn Ihr mir weiterhelfen könntet.
Vielen Dank
Gruß Sven
|