Hallo. Ich habe ein Makro mit dem ich Text in Anführungszeichen farblich gestalten kann. Mein Problem: ich möchte die An - und Ausführungszeichen selbst mit farblich gestalten. Wie ändere ich das Makro? Danke
Das Makro hier:
Sub machFarbe()
Dim suchbereich As Range, fundbereich As Range
Set suchbereich = ActiveDocument.Range
With suchbereich.Find
.MatchWildcards = True
.Text = Chr(132) & "*" & Chr(147)
Do While .Execute
Set fundbereich = ActiveDocument.Range(suchbereich.Start + 1, suchbereich.End - 1)
fundbereich.Font.Color = RGB(62, 137, 206)
Loop
End With
End Sub
Moin Steffen,
da dürfte Dir ein Select fehlen:
Code:
fundbereich.select
with Selection
.font.colorindex = vbBlue
end with
Nur so als Schuss ins Blaue ;-)
Frage am Rande: Wieso beschneidest Du Deinen Suchbereich? Gibt's dafür einen Grund?
Grüße
Hallo und erst einmal danke für die Hilfe,
Nun das Makro habe ich nicht selbst erstellt. Ich kenne mich damit nicht aus. Hat mir hier jemand vor Jahren gefertigt.
Ich wollte Text innerhalb von Anführungszeichen kursiv haben.
Wo muss ich deinen teil einfügen?
Moin Steffen,
in Deinem Code gibt es die Zeile
Set fundbereich = ...
Meine vier Zeilen ersetzen Deine eine Zeile danach.
Um auch tatsächlich Deine Farbe zu setzen, ändere meine Zeile 2 auf
.Foont.Color = RGB(62, 137, 206)
Das sollte schon funktionieren
Meine Frage spielt im Zusammenhang Deines Codes keine erhebliche Rolle ... einfach vergessen.
Viel Erfolg!
Danke für deine Hilfe. Hatte es da eingefügt aber dann kommtein Fehler beim ausführen des Makro. Vielleicht hab ich was falsch eingefügt? Sorry bitte:
Sub machFarbe()
Dim suchbereich As Range, fundbereich As Range
Set suchbereich = ActiveDocument.Range
With suchbereich.Find
.MatchWildcards = True
.Text = Chr(132) & "*" & Chr(147)
Do While .Execute
Set fundbereich = fundbereich.select
with Selection
.font.colorindex = vbBlue
end with
End Sub
Moin Stffen,
dann versuch's doch mal so:
Code:
Option Explicit
Sub FarbigAngeführt()
Dim doc As Document: Set doc = ActiveDocument
Dim rng As Range: Set rng = doc.Content
With rng.Find
.ClearFormatting
.Text = Chr(34) & "*" & Chr(34)
.MatchWildcards = True
.Forward = True
.Wrap = wdFindStop
Do While .Execute
rng.Font.Color = wdColorBlue
rng.Collapse wdCollapseEnd
Loop
End With
End Sub
Mit Standardanführungszeichen (doppeltes Hochkomma oben) erfolgreich getestet, Wenn Du andere verwendest, musst Du die
Chr() anpassen.
Viel Erfolg!
und schöne Grüße!
Das ...das hat wunderbar funktioniert.
Woher nur weißt du so etwas?
Toll, das es solche Menschen gibt.
Danke, danke, danke...
Alles Gute
Moin Steffen,
Dein Ghostwriter hat schon ein gute Grundlage geliefert und ich habe dann ein bisschen weiter VBAstelt ... ;-)
Schöne Grüße
Nochmals Danke und ...ich will auch so etwas können:-)
Oh sorry noch bitte. Vielleicht noch eine Frage: könnte man in diesem Makro kursiv und die Farbe gleichzeitig ausführen. Im Moment bedine ich zwei Makros.
Eines "Sub macht kursiv" und eben dein "Farbeausgeführt"
Es ist nicht von Wichtiglkeit, wäre allerdings nett.