Supportnet Computer
Planet of Tech

Supportnet / Forum / Anwendungen(Java,C++...)

Gefundene Textpassagen auslesen





Frage

Hallo! Ich sitze hier gerade an einem VBA-Problem (Word97): Ich suche einen Text, der durch einen regulären Ausdruck ermittelt wird. Aber irgendwie markiert Word den bei einem Fund nicht, sondern lässt den Cursor, wo er ist. Wäre er markiert, könnte ich ihn mit [code]Selection.Text[/code] auslesen, aber so? Hier ist mal ein wenig Code: [code] If ActiveDocument.Bookmarks.Exists("marke") Then start_bereich = ActiveDocument.Bookmarks("marke").Start ende_bereich = ActiveDocument.Bookmarks("marke").End Set meinbereich = ActiveDocument.Range(Start:=start_bereich, End:=ende_bereich) With meinbereich.Find .Text = "^z*[!^t]^t" .Execute MatchWildcards:=True, Forward:=True End With Selection.Find.Execute While massbereich.Find.Found ' mach Kram Wend End If[/code] Da, wo "mach Kram" steht, brauche ich den gefundenen Text. Hat jemand eine Ahnung, wie ich an den rankommen kann? mfg bored

Antwort 1 von bored

Uups :)


If ActiveDocument.Bookmarks.Exists("marke") Then
start_bereich = ActiveDocument.Bookmarks("marke").Start
ende_bereich = ActiveDocument.Bookmarks("marke").End
Set meinbereich = ActiveDocument.Range(Start:=start_bereich, End:=ende_bereich)

With meinbereich.Find
.Text = "^z*[!^t]^t"
.Execute MatchWildcards:=True, Forward:=True
End With

Selection.Find.Execute

While meinbereich.Find.Found
' mach Kram
Wend
End If


Antwort 2 von bored

So, hat sich erledigt.

Für alle, die es interessiert:
Wenn man die Find-Methode in einem Range-Objekt benutzt (so wie ich hier), dann wird der gefundene Text nicht markiert. Sobald man das mit nem Selection-Objekt macht, funzt das.

In meinem Fall also:

meinbereich.Select
Selection.Find usw usf.



mfg bored

Ich möchte kostenlos eine Frage an die Mitglieder stellen:


Ähnliche Themen:


Suche in allen vorhandenen Beiträgen: