Import von Textdateien in Access - Wie kann der Dateiname mit importiert werden
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
Zusätzlich möchte ich gerne den Dateinamen beim Import mit in die Tabelle schreiben. Dafür gibt es eine eigene Spalte in der Tabelle.
Wie kann ich das bewerkstelligen?
Ich würde auch gerne in eine zustäzliche Tabelle wegschreiben wollen, wann der Import gelaufen ist. Wie wär das möglich?
Danke schonmal für die Hilfe.
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
Zusätzlich möchte ich gerne den Dateinamen beim Import mit in die Tabelle schreiben. Dafür gibt es eine eigene Spalte in der Tabelle.
Wie kann ich das bewerkstelligen?
Ich würde auch gerne in eine zustäzliche Tabelle wegschreiben wollen, wann der Import gelaufen ist. Wie wär das möglich?
Danke schonmal für die Hilfe.
Please also mark the comments that contributed to the solution of the article
Content-Key: 163532
Url: https://administrator.de/contentid/163532
Printed on: April 24, 2024 at 03:04 o'clock
2 Comments
Latest comment
Hi,
wenn Du diese Zeile in Deine Schleife einbaust, wird Dateiname und Datum in eine Tabelle namens "tblLog" (mit den Feldern Dateiname und Datum) geschrieben.
wenn Du diese Zeile in Deine Schleife einbaust, wird Dateiname und Datum in eine Tabelle namens "tblLog" (mit den Feldern Dateiname und Datum) geschrieben.
CurrentDb.Execute "INSERTinto tblLog ([Dateiname],[Datum]) VALUES ('" & .FoundFiles(i) & "'," & Str(CDbl(Now)) & ")"