Ich habe ein großes Word-Dokument erhalten, welches wichtige Daten in rot gekennzeichnet hat. Da mir für den Ausdruck nur ein Schwarz-Weiß-Drucker zur Verfügung steht, benötige ich ein anderes Unterscheidungsmerkmal.
Als Idee hatte ich nun die roten Zeichen als Unterscheidungsmerkmal in „fett“ und „kursiv“ zu setzen. Da es viele Seiten zu editieren galt, behalf ich mich mit dem folgenden Makro, welches mir die Umsetzung abnahm:
Sub RedChanger 'Falls das Zeichen die Farbe "Rot" besitzt, folgendes durchführen: '- Schrift auf "automatisch" setzen '- Schrift auf "fett" setzen '- Schrift auf "kursiv" setzen Dim WordDocument As Word.Document Dim longCount As Long Set WordDocument = ActiveDocument Application.ScreenUpdating = False For longCount = 1 To WordDocument.Range.Characters.Count If WordDocument.Characters(longCount).Font.Color = wdColorRed Then WordDocument.Characters(longCount).Font.Color = 0 WordDocument.Characters(longCount).Font.Bold = True WordDocument.Characters(longCount).Font.Italic = True End If Application.ScreenUpdating = True DoEvents Next End Sub
Dieses Skript kann natürlich auch für andere Zwecke erweitert und angepasst werden. Jedes Zeichen wird dabei einzeln analysiert, so dass die Anpassung eines Textes eine gewisse Zeit in Anspruch nimmt.
Hallo,
wie geht man vor, wenn die Farbe bestimmter Daten keine Standardfarbe ist, man also keine wdColor Konstante verwenden kann.
Wäre für Hilfe sehr dankbar.
Hallo Erich,
wenn dir die definierte Farbe bekannt ist, kannst du die Zeile austauschen:
If WordDocument.Characters(longCount).Font.Color = RGB(255, 0, 0) Then
Dieses ist das adaptive Beispiel für Rot.
Viele Grüße
Daniel