Winword 7.0
Eine Liste aller Wörter in einem Dokument anlegen
Antwort
Möchte man umfangreiche Dokumente mit einem Glossar ausstatten, verliert man leicht
den Überblick, welche Wörter im Text auftauchen. Dies wird durch eine Liste
erleichtert, die alle im Dokument enthaltenen Wörter enthält. Wenn Sie das im Kasten
abgedruckte Makro starten, wird zunächst ein neues Dokument angelegt, in das jedes
Wort des aktiven Dokuments kopiert wird. Das Makro überprüft die Liste auf doppelte
Wörter und erfaßt diese nicht zweimal. Dabei beachtet das Makro die Großund
Kleinschreibung. Taucht also ein Wort einmal klein geschrieben und ein anderes Mal mit
einem großen Anfangsbuchstaben auf - zum Beispiel, weil es am Satzanfang steht -
erscheint es in der Liste nur einmal. Möchten Sie, daß Wörter sowohl in kleiner als auch
in großer Schreibweise erfaßt werden, müssen Sie an die Zeile »BearbeitenSuchen
.Suchen = a$, .Richtung = 0« die Zeichenfolge ».GroßKleinschreibung = 1« anhängen.
Die Zeile muß also lauten: »BearbeitenSuchen .Suchen = a$, .Richtung = 0
.GroßKleinschreibung = 1« Der Durchlauf des Makros nimmt bei längeren Dokumenten
viel Zeit in Anspruch. Testen Sie die Funktion also am besten an einem kurzen Text.
Nach dem Abarbeiten des Makros erscheint die Liste der Wörter sortiert nach ihrem
erstmaligen Auftritt. Wenn Sie eine Liste in alphabetischer Reihenfolge bevorzugen,
markieren Sie mit »Bearbeiten | Alles markieren« das komplette Dokument, um mit
»Tabelle | Text sortieren« die gewünschte Sortierungsart einzustellen.
Makro zum Erfassen aller Wörter eines Textes :
Sub MAIN x$ = FensterName$() DateiNeuStandard y$ = FensterName$() Aktivieren
x$ BeginnDokument While Not AmEndeDesDokuments() WortRechts 1, 1 a$ =
Markierung$() z = 1 If Len(a$) = 0 Then z = 0 REM Die folgende Schleife ist
notwendig, wenn sich REM die Markierung in einer Tabelle befindet While z = 0
ZeichenRechts WortRechts 1, 1 a$ = Markierung$() z = Len(a$) Wend REM
Leerzeichen am Wortende werden abgeschnitten While Right$(a$, 1) = „ „ a$ =
Left$(a$, Len(a$) - 1) Wend Abbrechen REM Nur wenn das Wort ein gültiges Wort
ist, REM wird es in der Wortlistendatei gesucht und eingefügt If a$ <> Chr$(13) And
a$ <> Chr$(11) And a$ <> Chr$(9) Then Aktivieren y$ BeginnDokument
BearbeitenSuchenLöschenFormatierung BearbeitenSuchen .Suchen = a$, .Richtung = 0
If BearbeitenSuchenGefunden() = 0 Then EndeDokument Einfügen a$ EinfügenAbsatz
EndIf Aktivieren x$ EndIf ZeichenRechts Wend End Sub