Sub Einlesen()
Dim db As Database
Dim RS As DAO.Recordset
Dim q As Long
Dim x As String
Dim i As Long
Dim varTDat(1000) As String '// erhöhen wenn >100
Dim txt As String
Dim Text1$, Text2$, Text3$, Text4$, Text5$, Text6$, Text7$, Text8$, Text9$, Text10$, Text11$, Text12$, Text13$, Text14$, Text15$, Text16$, Text17$, Text18$, Text19$, Text20$
'// Recordset öffnen
Set db = CurrentDb
Set RS = db.OpenRecordset("tabelle1")
'//---Dateinamen feststellen und im 100-Array speichern
x = Dir("c:\log\log\*.txt")
Do
varTDat(i) = x
i = i + 1
x = Dir
Loop Until x = ""
'//--- Dateien einlesen mit jeweils 3 Zeilen
'// bei Fehler zu fehler springen
On Error GoTo fehler
For q = 0 To i - 1
'// Datei öffnen
Open "c:\log\log\" & varTDat(q) For Input As #1
'// tue solange wir nicht am Ende der Datei sind...
Do While Not EOF(1)
'// 1 Zeile lesen
Line Input #1, txt
'// bei jeder 16. Zeile einen neuen Datensatz einfügen
If q Mod 1 = 0 Then RS.AddNew
'// Feld füllen
RS("feld" & CStr((q Mod 1) + 1)) = txt
'// vor jeder 16. Zeile den Datensatz updaten
If q Mod 1 = 0 Then RS.Update
'// Recordset updaten
Loop
'// Datei schließen
Close #1
Next q
'// Recordset schließen
RS.Close
'// Sub verlassen
Exit Sub
fehler:
'// Fehlermeldung anzeigen
MsgBox "Es trat folgender Fehler auf: " & Err.Number & " - " & Err.Description
'// Datei schließen
Close #1
'// Recordset schließen
RS.Close
End Sub