 |
Texte in ASCII- und ANSI-Dokumente umwandeln
Wer mit Word 97 erzeugte Textdokumente als ASCII-Dateien speichern oder als E-Mails weitergeben will, stolpert unweigerlich über die deutschen Umlaute und Sonderzeichen. Denn auch in der neuen Word-Version gibt es keine Funktion zum automatischen Ersetzen deutscher Umlaute, des "ß", sowie typographischer Anführungszeichen durch gerade Anführungszeichen. Man muß also entweder schon während der Texteingabe die Umlaute und andere problematische Zeichen umgehen oder später den Word-Befehl »Bearbeiten | Ersetzen« mehrmals bemühen, um dem Dokument die gewünschte Form zu verpassen. Die erste dieser beiden Methoden stört allerdings erheblich beim Verfassen des Dokuments, weil man von der gewohnten Schreibweise abweichen muß. Die zweite Methode ist nicht nur langwierig und mühsam, sondern bringt oft auch unkorrekte Ergebnisse, denn jeder Großbuchstabe mit Umlaut am Wortanfang zum Beispiel Ä in "Ärger" oder Ü in "Übung" wird durch zwei Großbuchstaben ersetzt ("AErger" und "UEbung"). Man muß dann nachträglich alle überflüssigen großen "E"s manuell durch kleine "e"s ersetzen, da der »Ersetzen«-Befehl in diesem Fall versagt. Auch beim Umwandeln von E-Mails und anderen ASCII-Texten in Windows-übliche ANSI-Dokumente mit den Word 97-internen Korrekturmitteln ist zeitaufwendige Handarbeit angesagt. Sie können Ihre Dokumente aber in gewohnter Art verfassen und dann schnell alle Problemzeichen ersetzen, wenn Sie die Makros "ASCII" und "ANSI" verwenden. Um das "ASCII"-Makro zu erzeugen, öffnen Sie mit [Alt] [F11] das »Microsoft Visual Basic«-Fenster und geben den entsprechenden Makro-Code ein. Schließen Sie danach das Visual-Basic-Fenster wieder. Die Funktion des Makros können Sie prüfen, wenn Sie nach dem Wechsel in das Dokumentfenster von Word mit [Alt] [F8] das Fenster »Makros« einblenden und unter »Makroname« »ASCII« doppelt anklicken. Das Makro verwandelt dann alle Umlaute in E-Mail- beziehungsweise ASCII-konforme Zeichen und Zeichenkombinationen (gerade Anführungszeichen, »ae«, »oe«, »ue« und »ss«). Wollen Sie eine ASCII-Datei in einen ANSI-Text umwandeln, können Sie auf das "ANSI"-Makro zurückgreifen. Dieses Makro stellt die Umlaute und "ß"-Zeichen sowie typographische Anführungszeichen wieder her. Darüber hinaus nimmt es Ihnen auch die sonst unvermeidliche nachträgliche Korrekturarbeit größtenteils ab. Dafür ist der erweiterbare Teil des Makros zwischen den Zeilen »Edit« und »End of Edit« zuständig, in dem Sie alle Ausnahmen der automatischen Umwandlung eintragen. So verhindern Sie unter anderem, daß aus Verzeichnissen »Verzeichniße« und aus Quellen »Qüllen« werden. Das abgedruckte Makro-Listing beinhaltet nur ein paar Ausnahmen. Alle weiteren Sonderfälle können Sie aber jederzeit nach dem gleichen Schema wie die vorhandenen Einträge ergänzen. Zuerst geben Sie nach ».Text=« die problematische Buchstabenkombination ein, dann legen Sie mit »Replacement.Text=« fest, wodurch sie ersetzt werden soll, und schließlich folgt der Befehl »GoSub mark1«. So nützlich beide Makros sind, sollten Sie aber eines bedenken: Unfehlbar sind sie genau so wenig, wie automatische Rechtschreibprüfungen. Wollen Sie absolut sicher sein, daß die umgewandelten Texte keine Fehler enthalten, sollten Sie sie nach dem Konvertieren noch einmal durchlesen. Makro zum Konvertieren eines Dokuments in ASCII-Text: Sub ASCII() rumpf: With Selection.Find .Text = "ä" .Replacement.Text = "a" GoSub mark1 If zeich = "a" Or zeich = "A" Then GoSub mark3 .Text = "ö" .Replacement.Text = "o" GoSub mark1 If zeich = "o" Or zeich = "O" Then GoSub mark3 .Text = "ü" .Replacement.Text = "u" GoSub mark1 If zeich = "u" Or zeich = "U" Then GoSub mark3 .Text = "ß" .Replacement.Text = "ss" GoSub mark2 With Options .AutoFormatAsYouTypeReplaceQuotes = False End With .Text = """" .Replacement.Text = """" GoSub mark2 GoSub mark4 mark1: .Wrap = wdFindContinue .Execute Replace:=wdReplaceOne zeich = Selection.Characters(1).Text Return: mark2: .Wrap = wdFindContinue .Execute Replace:=wdReplaceAll Return: End With mark3: With Selection .Collapse Direction:=wdCollapseEnd .TypeText Text:="e" End With GoSub rumpf: mark4: With Options .AutoFormatAsYouTypeReplaceQuotes = True End With End Sub Makro zum Konvertieren eines ASCII-Textes in ein ANSI-Dokument: Sub ANSI() With Selection.Find .Text = "ae" .Replacement.Text = "ä" GoSub mark1 .Text = "oe" .Replacement.Text = "ö" GoSub mark1 .Text = "ue" .Replacement.Text = "ü" GoSub mark1 .Text = "ss" .Replacement.Text = "ß" GoSub mark1 .Text = """" .Replacement.Text = """" GoSub mark1 'Edit .Text = "qü" .Replacement.Text = "que" GoSub mark1 .Text = "eür" .Replacement.Text = "euer" GoSub mark1 .Text = "düll" .Replacement.Text = "duell" GoSub mark1 .Text = "außc" .Replacement.Text = "aussc" GoSub mark1 'End of Edit GoSub ende mark1: .Wrap = wdFindContinue .Execute Replace:=wdReplaceAll Return: End With ende: End Sub
|
 |