Hallo VBA-ler,
ich möchte mir in Excel VBA eine Funktion schreiben, die mir angibt, ob in der aktiven Zelle Teile des Textes (oder der ganze Text) fett formatiert ist. Ich habe das so gelöst, was auch funktioniert:
Sub f()
MsgBox fett(ActiveCell)
End Sub
Function fett(zelle As Range) As Boolean
Dim pos As Long
fett = False
For pos = 1 To Len(zelle.Value)
fett = fett Or (zelle.Characters(Start:=pos, Length:=1).Font.FontStyle = "Fett")
Next pos
End Function
Allerdings finde ich es unschön, dass ich hier eine Schleife benutzen muss. Das macht das Ganze doch recht langsam, wenn es sehr viele Zellen sind.
Gibt es eine bessere/schnellere Lösung? Ich habe schon bei der Excel4-Funktion ZELLE.ZUORDNEN geschaut. Die kann aber nur feststellen, ob das erste oder alle Zeichen fett sind. Beginnt die „Fettigkeit“ irgendwo mitten im Text, geht’s nicht.
Experten vor!
Danke und Gruß,
Andreas