Access-o-Mania

Access-Forum (Deutsch/German) => Access Programmierung => Thema gestartet von: MonacoTJ am April 01, 2011, 10:53:54

Titel: Automatischer Import von Textdateien - Wie kann Dateiname mit importiert werden
Beitrag von: MonacoTJ am April 01, 2011, 10:53:54
Hallo,
ich importiere über TransferText mehrere Textdateien aus Unterverzeichnissen. Das klappt auch.
Jetzt möchte ich den Dateinamen mitimportieren.

mit folgendem VBA-Script funktioniert der Import der verschiedenen Textdateien.

Sub ImportBBLogs()

Const SuchVerzeichnis = "C:\Verzeichnis"
Const InUnterverzeichnissen = True
Const DatTyp = "*.txt"

Dim i As Long

With Application.FileSearch
.LookIn = SuchVerzeichnis
.NewSearch
.SearchSubFolders = InUnterverzeichnissen
.FileName = DatTyp
.Execute
For i = 1 To .FoundFiles.Count
'Debug.Print .FoundFiles(i)
MsgBox .FoundFiles(i)
DoCmd.TransferText acImportFixed, "myspec", "Tabelle", .FoundFiles(i)
Next i
End With

End Sub

Die Tabelle, in die importiert wird, hat eine zusätzliche Spalte "Dateiname" in der ich gerne den Dateinamen der imporierten Textdatei einfügen möchte.

Kann mir jemand einen Tipp geben?

Danke und Gruß

Titel: Re: Automatischer Import von Textdateien - Wie kann Dateiname mit importiert werden
Beitrag von: DF6GL am April 02, 2011, 09:12:01
Hallo,



direkt über Transfertext geht das nicht, wenn der Dateiname nicht auch als "Spalte" in der txt-Datei vorhanden ist. Du könntest direkt nach der Zeile Docmd.Transfertext eine Aktualisierungsabfrage ausführen:

.
.
DoCmd.TransferText acImportFixed, "myspec", "Tabelle", .FoundFiles(i)
Currentdb.Execute "Update Tabelle set Dateiname = '" & .FoundFiles(i) & "' where Dateiname  is Null"
Next i
.
.
Titel: Re: Automatischer Import von Textdateien - Wie kann Dateiname mit importiert werden
Beitrag von: MonacoTJ am April 04, 2011, 10:39:53
Top, vielen Dank für die schnelle Hilfe.