![]() |
||
![]() |
Reguläre Ausdrücke in Winword.Ich habe einige Adreßlisten in Winword, die ich gerne per Excel-Textassistent oder in ähnlicher Weise in Access importieren möchte. Dabei erkennt keine der von mir ausprobierten Methoden das Format der Daten richtig. Die Daten liegen in einem Listenformat vor, in dem ein Datensatz mehrere Zeilen umfaßt. Teilweise sind die Daten durch Komma oder Leerzeichen getrennt. Wie kann ich die Daten in ein datenbankverträgliches Format wandeln? Da praktisch alle Importfunktionen oder -Assistenten von Datenbanken einen Datensatz in einer Zeile voraussetzen, sollte das Ihr erster Konvertierungsschritt sein. Eine Zeile entspricht in Winword nicht einer Druckzeile sondern einem Absatz. Da Daten in Listenform, wie auch bei Ihnen, meist mehrere Absätze belegen, müssen Sie diese vorher konvertieren. Suchen nach: ^aDas Zeichen ^a steht dabei für die Absatzmarke von Winword. Danach können Sie die Datensätze in eine Zeile konvertieren. Im Beispiel besteht ein Datensatz aus vier Absätzen: Suchen nach: (*$)?(*$)?(*$)?(*$)An dieser Stelle ist es Zeit die sogenannten Stellvertreterzeichen zu beschreiben. Dazu sehen Sie sich am besten die Tabelle an. ((Mike: Bitte als Kasten extra setzen)) Die Klammern verwenden Sie, um Suchkriterien sowie Text zu gruppieren und die Reihenfolge der Auswertung festzulegen. Eine Suche nach " Die Beispielsuche benutzt die Klammern, um die Absätze zu gruppieren. Die Absätze sind alle Zeichen * bis zum Absatzende (selbstdefiniertes $). Danach folgt eine Absatzmarke, die mangels eigenen Zeichen das Fragezeichen ? repräsentiert. Insgesamt sind es vier Zeilen und damit vier Klammern. Die letzte Absatzendemarke ist nicht zu ersetzen, deshalb fehlt das letzte Fragezeichen. Im Feld Ersetzen repräsentieren die Zeichen \1 bis \4 die Klammergruppen, also die Absätze. Den Tabulator fügt das Zeichen ^t ein. Nach diesen beiden Durchläufen sollte jeweils ein Datensatz mit Tabulatoren getrennt erscheinen. Da aber noch nicht alle Felder mit Tabulatoren getrennt sind, folgt noch ein letzter Schritt: Das Ersetzen der Feldtrennzeichen durch Tabulatoren. In einer Listendarstellung sind das meist mehrere Leerzeichen, die letzte Ersetzfunktion lautet dementsprechend: Suchen nach: Leerzeichen{2;}Wahrscheinlich müssen Sie dieses Beispiel mehr oder weniger stark an Ihre Bedürfnisse anpassen. Im Zweifelsfall sollten Sie mit den Stellvertreterzeichen ein wenig herumspielen, bis die Konvertierung auch bei Ihnen klappt. Um den Vorgang für weitere Dokumente zu automatisieren, zeichnen Sie einen gesamten Konvertierungslauf in einem Makro auf. |
![]() |