Erstelle ein Blatt mit dem Namen "Dateinamen" und schreibe ab Z1S1 die Dateinamen (mit volständigem Pfad) untereinander.
Erste leere Zelle bedeutet "Ende der Liste".
Auf Blatt 1 (oder wie immer das Blatt heisst, wo die Ausgabe hin soll) fügst du ein Formularsteuerelement "Schaltfläche" hinzu und weist ihm dieses Makro (den du in einem MODUL einfügst):
Sub Makro1()
Dim Arr
Dim Datei
Dim FSO
Dim L As Long
Dim Tmp As Variant
Dim vnt_Ausgabe As Variant
Dim I As Integer
Dim Str_String As String
Dim a As Variant
For Z = 1 To 100
nam$ = Sheets("Dateinamen").Cells(Z, 1)
If nam$ = "" Then Exit For
Set FSO = CreateObject("Scripting.FilesystemObject")
Set Datei = FSO.OpentextFile(nam$) 'Anpassen
Str_String = Datei.readall
Datei.Close
Arr = Split(Str_String, vbCrLf) 'Nach Datensätzen splitten
ReDim vnt_Ausgabe(UBound(Arr), 200) '200 Spalten reichen ???
For L = 0 To UBound(Arr)
Tmp = Split(Arr(L), " ") 'Jeden Datensatz nach Werten splitten
For I = 0 To UBound(Tmp)
vnt_Ausgabe(L, I) = Tmp(I) 'Jeden Wert in das Array vnt_Ausgabe umschaufeln
Next I
Next L
a = Tmp(0)
dt = DateValue(Right$(a, 2) + "." + Mid$(a, 5, 2) + "." + Left$(a, 4))
zt = TimeValue(Mid$(Tmp(1), 2, 8))
Cells(Z, 1) = dt + zt
Cells(Z, Z * 2) = Tmp(3)
Cells(Z, Z * 2 + 1) = Tmp(4)
Next Z
End Sub
|