marcoborn
Goto Top

Suche in Word

Hallo Forum,
ich möchte per VBA in Word nach dem Vorkommen eines Strings suchen, z.B. nach "Hallo". Mit der Found-Eigenschaft kann ich ermitteln, ob das Wort im Text vorkommt. Ich benötige aber die Anzahl, wie oft mein String gefunden wird. Hat jemand eine Idee, wie sich das realisieren ließe?

Vielen Dank im voraus,
M. Born

Content-ID: 345425

Url: https://administrator.de/forum/suche-in-word-345425.html

Ausgedruckt am: 22.12.2024 um 13:12 Uhr

133883
Lösung 133883 04.08.2017 aktualisiert um 12:20:50 Uhr
Goto Top
Mit der Found-Eigenschaft kann ich ermitteln, ob das Wort im Text vorkommt.
Die Execute Methode kannst du mehrfach aufrufen und damit in einer Schleife um den Found-Boolean und einem Counter die Anzahl der Fundstellen ermitteln.
Sub FindCount()
    MsgBox "Anzahl Fundstellen " & FindStringOccurences("Hallo")  
End Sub

Function FindStringOccurences(strSearch) As Long
    Dim cnt As Long, r as Range
    Set r = ThisDocument.Content
    While r.Find.Execute(FindText:=strSearch, MatchCase:=False, Forward:=True, Wrap:=wdFindStop, MatchWildcards:=False)
        cnt = cnt + 1
    Wend
    FindStringOccurences = cnt
End Function
Gruß
MarcoBorn
MarcoBorn 04.08.2017 um 12:31:25 Uhr
Goto Top
Vielen Dank. Das funktioniert ausgezeichnet.