Spezifikationen nutzen

Makro für Import

So weit ist das schon eine erhebliche Erleichterung für den häufigen Import immer gleicher Dateien. Aber gerade dann werden Sie sich sehr wahrscheinlich ein Makro einrichten. Das ist auch noch erfreulich einfach, wenn Sie die entsprechende Aktion TransferText gefunden haben und ein Makro wie etwa in Bild 2 dafür schreiben.

Bild 2: Makro zum Import einer Textdatei.
Bild 2: Makro zum Import einer Textdatei.

Was aber ist, wenn die Datei jeden Monat ihren Namen wechselt? Wenn verschiedene Nutzer importieren sollen, können Sie denen kaum zumuten, immer wieder einen bestimmten Dateinamen sicherzustellen.

VBA-Code statt Makro

Sie können nämlich nicht einfach das Makro-Argument Dateiname leer lassen, damit Access bei der Ausführung den Dateinamen erfragt. Um hier mehr Flexibilität zu erlangen, müssen Sie das Makro in VBA-Code verwandeln.

Das geht immerhin automatisch, indem Sie den Makro-Entwurf öffnen und unter Datei Speichern unter die Auswahl Als Modul treffen. Danach können Sie noch angeben, ob Sie eventuelle Kommentare im Makro übernehmen oder eine VBA-Fehlerbehandlung neu einfügen wollen. In Listing 1 sehen Sie das Ergebnis des konvertierten Makros als VBA-Code.

Function macImport01()
On Error GoTo macImport01_Err
DoCmd.TransferText acImportDelim, _
"TblPersonen_01 Importspezifikation", "Tabelle1", _
"C:\Daten\tblPersonen_01.txt", _
True, "", 1250
macImport01_Exit:
Exit Function
macImport01_Err:
MsgBox Error$
Resume macImport01_Exit
End Function