62544
11.03.2008, aktualisiert am 12.03.2008
12224
3
0
Excel VBScript - Zelle nach Muster durchsuchen und Formattierung ändern
Hallo VB-Profis,
ich suche ein VB-Script für Microsoft Excel welches mir folgende Arbeit abnehmen könnte:
Ich habe eine Zelle (Ort Bekannt; z.B. B499). In dieser Zelle habe ich einiges an Text (z.B. "blablabla (E3512) blablabla (E3513) blablabla")
Nun möchte ich diese Zelle nach dem Muster (*) durchsuchen. Also alle Ausdrücke, welche in Klammern stehen und diese dann Fett markieren.
Konkret würde dann das Beispiel nach dem Makro so aussehen: "blablabla (E3512) blablabla (E3513) blablabla"
Es sollen wirklich alle Fundstellen ersetzt werden.
Hat mir jemand ein VB-Script, welches dies erledigen kann? Ich habe es schon mit "Find/Replace" versucht, denn dort kann ich die Formattierung auch ändern. Jedoch akzeptiert Excel keine Wildcards im Replace Text.
Vielen Dank für Eure Hilfe!
Grüsse
Staticip
ich suche ein VB-Script für Microsoft Excel welches mir folgende Arbeit abnehmen könnte:
Ich habe eine Zelle (Ort Bekannt; z.B. B499). In dieser Zelle habe ich einiges an Text (z.B. "blablabla (E3512) blablabla (E3513) blablabla")
Nun möchte ich diese Zelle nach dem Muster (*) durchsuchen. Also alle Ausdrücke, welche in Klammern stehen und diese dann Fett markieren.
Konkret würde dann das Beispiel nach dem Makro so aussehen: "blablabla (E3512) blablabla (E3513) blablabla"
Es sollen wirklich alle Fundstellen ersetzt werden.
Hat mir jemand ein VB-Script, welches dies erledigen kann? Ich habe es schon mit "Find/Replace" versucht, denn dort kann ich die Formattierung auch ändern. Jedoch akzeptiert Excel keine Wildcards im Replace Text.
Vielen Dank für Eure Hilfe!
Grüsse
Staticip
Bitte markiere auch die Kommentare, die zur Lösung des Beitrags beigetragen haben
Content-ID: 82878
Url: https://administrator.de/contentid/82878
Ausgedruckt am: 23.11.2024 um 04:11 Uhr
3 Kommentare
Neuester Kommentar
Hi
hab dir mal was geschrieben, das funktionier momentan als Button und der jeweilig´markierten Zelle. Aber das AuslöseEreignis kannst ja dann beliebig abändern.
Hoffe es hilft Dir
Greetz
Roland
Private Sub KlammernFett_Click()
Dim KlammerAuf, KlammerZu As Integer
KlammerAuf = 0
Do '##Eine Schleife, damit er den kompletten Text durchgeht##
KlammerAuf = InStr(KlammerAuf + 1, ActiveCell.Text, "(")
'##Hier wird ermittelt an welcher Stelle eine "(" steht##
If KlammerAuf = 0 Then Exit Do
KlammerZu = InStr(KlammerAuf, ActiveCell.Text, ")")
'##Und hier wird ermittelt an welcher Stelle eine ")" steht##
With ActiveCell.Characters(Start:=KlammerAuf, Length:=(KlammerZu - KlammerAuf) + 1).Font
'## Hier wird in der jeweils aktiven Zelle von KlammerAuf auf bis KlammerZu gewählt ##
.FontStyle = "Fett" '##Und Fett Markiert##
End With
Loop While Not KlammerAuf = 0 '##Wenn KlammerAuf Null zurückgibt ist keine weitere Klammer Auf mehr im Text##
End Sub
hab dir mal was geschrieben, das funktionier momentan als Button und der jeweilig´markierten Zelle. Aber das AuslöseEreignis kannst ja dann beliebig abändern.
Hoffe es hilft Dir
Greetz
Roland
Private Sub KlammernFett_Click()
Dim KlammerAuf, KlammerZu As Integer
KlammerAuf = 0
Do '##Eine Schleife, damit er den kompletten Text durchgeht##
KlammerAuf = InStr(KlammerAuf + 1, ActiveCell.Text, "(")
'##Hier wird ermittelt an welcher Stelle eine "(" steht##
If KlammerAuf = 0 Then Exit Do
KlammerZu = InStr(KlammerAuf, ActiveCell.Text, ")")
'##Und hier wird ermittelt an welcher Stelle eine ")" steht##
With ActiveCell.Characters(Start:=KlammerAuf, Length:=(KlammerZu - KlammerAuf) + 1).Font
'## Hier wird in der jeweils aktiven Zelle von KlammerAuf auf bis KlammerZu gewählt ##
.FontStyle = "Fett" '##Und Fett Markiert##
End With
Loop While Not KlammerAuf = 0 '##Wenn KlammerAuf Null zurückgibt ist keine weitere Klammer Auf mehr im Text##
End Sub