Im Dokument den Satz mit den meisten Wörtern anzeigen

19/04/2008 - 01:23 von Frank Spade | Report spam
Guten Tag,

wie kann ich mit VBA den Text satzweise abarbeiten, dabei ermitteln,
wieviele Wörte jeweils im Satz sind und am Ende den Satz mit den meisten
Worten markieren und in den Fokus bringen?

Herzlichen Gruß

Frank
 

Lesen sie die antworten

#1 Klaus Linke
19/04/2008 - 01:47 | Warnen spam
"Frank Spade" schrieb:
Guten Tag,

wie kann ich mit VBA den Text satzweise abarbeiten, dabei ermitteln,
wieviele Wörte jeweils im Satz sind und am Ende den Satz mit den meisten
Worten markieren und in den Fokus bringen?




Hallo Frank,

Mit der Sentences-Collection geht das recht einfach (aber auch recht
langsam):

Sub FindLongestSentence()
Dim mySentence As Range
Dim myLongestSentence As Range
Dim maxLength As Long

maxLength = 0
For Each mySentence In ActiveDocument.Sentences
If Len(mySentence.Text) > maxLength Then
maxLength = Len(mySentence.Text)
Set myLongestSentence = mySentence.Duplicate
End If
Next mySentence
myLongestSentence.Select
End Sub

Falls deine Dokumente groß sind, und das Makro zu lange braucht, wàre es
sinnvoll, den gesamten Text zunàchst in einen String zu lesen
(myString=ActiveDocument.Text), in "Sàtze" aufzuteilen (mit Split und ein
wenig Code vorher), den làngsten "Satz" im Array zu bestimmen, und den dann
mit Selection.Find zu suchen.

Gruß,
Klaus

Ähnliche fragen