Wenn Sie Daten zwischen Access und anderen Anwendungen austauschen, dann ist der Weg über Textdateien oft der überschaubarste, wenn nicht gar der einzige. Der Import oder Export läuft als Zwischenschritt über ein Format, das einfach und kontrollierbar ist. Doch manchmal ringen Sie hier auch mit undurchsichtigen Problemen, denn Text ist nicht gleich Text …
Beispieldatenbank
Die Beispiele dieses Artikels finden Sie in der Datenbank 1503_Textumwandlung.mdb.
Import und Export in Access
Möchten Sie eine Tabelle aus Access in eine andere Anwendung exportieren, die nur mit Textdateien umgehen kann, so verwenden einfach Sie den Export-Assistenten, welchen Sie über den Ribbon und dessen Register Externe Daten erreichen. Klicken Sie hier auf Exportieren|Textdatei.
Zuvor haben Sie die Tabelle oder Abfrage mit den gefragten Daten im Navigationsfenster markiert – etwa die tblAddressen der Beispieldatenbank. Im nun erscheinenden Dialog geben Sie den Pfad für die zu erstellende Textdatei an (siehe Bild 1). Sollte das Kontrollkästchen mit der Beschriftung Exportieren mit Formatierung und Layout aktiviert werden Davon ist abzuraten, wenn die Textdatei später als Datenquelle herhalten soll, denn die Formatierung macht unter Umständen die Struktur zunichte und ist nur dann sinnvoll, wenn Sie die Textdatei anschließend lediglich in einem Texteditor betrachten wollen.
Bild 1: Der Textexport-Assistent von Access
Mit Klick auf OK gelangen Sie zu weiteren Seiten des Assistenten-Dialogs, über die Sie das Feldtrennzeichen und andere Einstellungen für das Format angeben können. Access belegt alles mit Voreinstellungen, die mehr oder weniger nützlich sind (Bild 2), aber meist der Modifikation bedürfen. So sollte ein Häkchen auf Feldnamen in erste Zeile einbeziehen gesetzt werden, denn sonst ist beim späteren Import unbekannt, wie die Spalten der Tabelle lauten.
Bild 2: Einstellungenseite des Assistenten für den Textexport
Möchten Sie etwa die Textdatei mit Adressen in Outlook importieren, dann fragt dieses für jede Spalte die Zuordnung zu seinen internen Adressfeldern ab. Da ist es optimaler, wenn gleich die Feldnamen der Tabelle ohne Begutachtung deren Inhalts ersichtlich werden. Dasselbe gilt für den Reimport der Textdatei in Access.
Beim Feldtrennzeichen sind andere überlegungen anzustellen. Das vorgeschlagene Semikolon ist oft ungeeignet. Nämlich immer dann, wenn Textinhalte der Tabelle selbst Semikola enthalten könnten.
Diese würden später ebenfalls als Feldtrenner verstanden werden, was den Import fehlschlagen lässt. Günstiger ist da das Tabulatorzeichen, welches sicher selten in Textfeldern auftauchen wird – schließlich bewegen Sie sich mit der Tab-Taste in einem Datenblatt zur nächsten Spalte, anstatt ein Tab-Zeichen einzugeben.
Allerdings kommt es auch auf die Zielanwendung an. Oft wird eben gerade das Semikolon als Trennzeichen erwartet, und dann müssen Sie dieses auch aktivieren, aber zuvor sicherstellen, dass die Tabelle selbst keine Semikola enthält.
Beim Textbegrenzungszeichen sieht es ähnlich aus. Die Anführungszeichen sind zwar Standard, erfordern aber ebenfalls, dass solche nicht im Text selbst vorkommen dürfen. Sollte das jedoch nicht gegeben sein, so wählen Sie aus dem Kombinationsfeld den Eintrag {kein} aus. Eine Fremdanwendung kann dann beim Import zwar nicht so leicht erkennen, dass es sich bei einer Spalte um ein Textfeld handelt, aber dieser Umstand ist weniger problematisch, als falsch positionierte Textbegrenzungszeichen.
Nicht verschwiegen werden sollte, dass Sie sich mit fehlendem Textbegrenzungszeichen neue Probleme einhandeln können. Da diese neben dem Trennzeichen den Inhalt einer Zelle eindeutig abgrenzen, kann ein enthaltener String beliebige Zeichen aufweisen. Fehlt das Begrenzungszeichen, so werden eventuell bestimmte Zeichen anders interpretiert. Häufige Kandidaten für das Schlamassel sind das Punktzeichen und das Komma, denn diese werden oft als Dezimalpunkt oder -komma für Zahlen verstanden. Schon beim Export aus Access kann es dabei zu Fehlern kommen, sofern Sie nicht über den Button Erweitert... ein anderes Dezimalsymbol bestimmten (Bild 3).
Bild 3: Exportspezifikationen
Soll die Textdatei später wieder in Access importiert werden, so können Sie hier ein Zeichen nehmen, dessen Vorkommen in der Tabelle ausscheidet. Solche Zeichen lassen sich mit die Tastatur über den Ziffernblock ausgeben. Nehmen Sie etwa für ein © die Kombination ALT-0169. Noch sicherer wäre die Kombination ALT-0253.
Mit einem Klick auf Weiter > im Export-Assistenten erstellen Sie schließlich die Textdatei.
Das Einlesen dieser Datei als Tabelle in Access übernimmt der Textimport-Assistent, der im weitgehend gleichen Gewand daherkommt, wie der Export-Assistent. Sie rufen ihn über den Ribbon und Externe Daten|Importieren und Verknüpfen|Textdatei auf. Auf den Seiten des Dialogs machen Sie dann exakt dieselben Angaben, wie beim Export. Es müssen Feldtrennzeichen, Begrenzungszeichen, Dezimalsymbol und Zeilenüberschriften übereinstimmen. Die so importierte Adressentabelle sollte dann die genau gleichen Daten zeigen, wie die Ursprungstabelle. Andere Eigenschaften der Tabelle, wie die Einstellungen zu Indizes, Default-Werten oder Beschränkungen, müssen Sie selbstverständlich manuell nachholen.
Import fremder Textdaten
Möchten Sie weiterlesen? Dann lösen Sie Ihr Ticket!
Hier geht es zur Bestellung des Jahresabonnements des Magazins Access [basics]:
Zur Bestellung ...
Danach greifen Sie sofort auf alle rund 400 Artikel unseres Angebots zu - auch auf diesen hier!
Oder haben Sie bereits Zugangsdaten? Dann loggen Sie sich gleich hier ein: