Ich gebe der Gemeinschaft etwas zurück, nachdem ich vier Stunden meiner Zeit damit verschwendet habe, ein bestimmtes Problem herauszufinden, aber gleichzeitig Ihre Frage beantworte. Der gesamte andere Code wurde aus anderen Quellen zusammengestellt. Dieser Code verwendet die Transfertext-Funktion, um mehrere CSVs aus einem Verzeichnis in ihre eigenen separaten Tabellen mit dem Dateinamen FILENAME als Tabellennamen zu ziehen. Wenn Sie Dateien mit demselben Dateinamen ausführen, können Sie sie an eine vorhandene Tabelle anhängen (praktisch, wenn Sie 30 Dateien mit unterschiedlichen Namen haben, aber von Monat zu Monat denselben Namen behalten). Zugang 2010
Wo ich Probleme hatte: Die verflixten Tabellen würden nicht angehängt werden, wenn die gleichnamige Datei ausgeführt wurde . Es würde immer eine neue Tabelle erstellen und eine 1 2 3 usw. anhängen. Whatever_csv whatever_csv1 whatever_csv2. *** Sie müssen den Punkt aus dem Dateinamen entfernen. Obwohl der Zugriff bei der Erstellung der Tabelle automatisch in einen Unterstrich geändert wird, werden Dateiname und Tabelle unterschiedlich benannt. Dies gilt für alle Zeichen, die von Access nicht zugelassen werden.
Die letzten vier des Dateinamens abschneiden, um .csv mit strTable = Left (strFile, Len (strFile) - 4) zu entfernen.
***** Hier ist die Antwort auf deine Frage *****
Option Compare Database Option Explicit Function DoImport() Dim strPathFile As String Dim strFile As String Dim strPath As String Dim strTable As String Dim blnHasFieldNames As Boolean ' Change this next line to True if the first row in CSV worksheet ' has field names blnHasFieldNames = True ' Replace C:\Documents\ with the real path to the folder that ' contains the CSV files strPath = "C:\Documents\" ' Replace tablename with the real name of the table into which ' the data are to be imported strFile = Dir(strPath & "*.csv") Do While Len(strFile) > 0 strTable = Left(strFile, Len(strFile) - 4) strPathFile = strPath & strFile DoCmd.TransferText acImportDelim,, strTable, strPathFile, blnHasFieldNames ' Uncomment out the next code step if you want to delete the ' EXCEL file after it's been imported ' Kill strPathFile strFile = Dir() Loop End Function