Hallo!
Also jetzt das Ganze nochmal mit lesbarer Formatierung. Bis auf ein paar Sachen war der Code bei dir eigentlich richtig. Das mit dem fehlenden \ und das <> bleiben muss hatte ich ja schon geschrieben. Zu den Variablen nochmal.
pfad nimmer den Ablagepfad auf , da wo deine TXT Dateien liegen.
datei nimmt den Namen der TXT Datei auf so es eine gibt (Bezeichnung vllt. unglücklich gewählt), der Name wird automatisch über den DIR Befehl gesucht. Mann muss ihn nicht händisch eingeben.
Dein Workbooks.Opentext ist jetzt mit eingebaut. Hattest da eigentlich nur vergessen noch den Pfad vorher anzufügen.
So sollte es eigentlich aussehen. Habe mal ein paar Kommentare mehr reingemacht, damit man ungefähr weiß, was welcher Schritt macht. Die kann man ja nach dem kopieren wieder rauslöschen.
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 | Sub auslesen()
Dim pfad As String
Dim datei As String
Dim speicherort
Dim struktur As Object
MsgBox "Bitte im nächsten Fenster den entsprechenden Ordner auswählen und mit OK bestätigen!"
Set struktur = Application.FileDialog(msoFileDialogFolderPicker)
With struktur
.Title = "Pfad suchen"
If .Show = -1 Then
For Each speicherort In .SelectedItems
pfad = speicherort
Next speicherort
End If
End With
If Right(pfad, 1) <> "\" Then pfad = pfad & " \"
datei = Dir(pfad & "*.txt" )
Do While datei <> ""
Workbooks.OpenText Filename:=pfad & datei, Semicolon:= True
datei = Dir
Loop
End Sub
|
Das sollte jetzt passen. Die TXT Dateien werden je in ein EXCEL-Workbook gepackt. Die müsstest du dann halt noch ggf. weiterbearbeiten (bspw. speichern etc.). Theoreitsch könntest du die im selben Ordner (wo die TXT liegen) speichern und dann die TXT löschen. Den Code stören andere Dateitypen im selben Ordner nicht.
Wünsche dann schonmal nen schönen 1.Advent
Gruß Matthias
|