Moinsen,
habe mich in den letzten Tagen ein bisschen in AutoIt eingearbeitet und habe meine ersten kleinen Scripts geschrieben. Dabei lese ich Daten von einer Website aus und kopiere Sie in eine Excel Tabelle.
Bin jetzt geradean einer neuen Variante und habe Probleme mit der Funktion_Word_DocRangeSet.
Ich versuche gerade aus einem Quellcode einer Website (als word Dokument) zehn AppIds auszulesen.
Diese kommen im letzten Teil des Dokuments (nach dem letzten "relatedapps" suchbegriff):
;Nach dem Bereich related apps suchen
Local $relatedAppssuche = _Word_DocFind($oDoc, "relatedapps", 0, Default, False)
If @error Then Exit MsgBox($MB_SYSTEMMODAL, "Word UDF: _Word_DocFind Example", _
"relatedapps locating the specified text in the document." & @CRLF & "@error = " & @error & ", @extended = " & @extended)
$relatedAppssuche.bold=True
;Suchbereich festlegen
Local $oSearchRange = _Word_DocRangeSet($oDoc,$relatedAppssuche,-1,50000) ;durchsuche nur den rest des dokuments
Danach möchte ich nur noch den rest des Dokuments durchsuchen und die zehn appids speichern. Ich bekomme es aber irgendiwe nur hin, das die nächste (also zweite) gefunden wird. Nicht aber die dritte, vierte usw...
;Erste AppId auslesen
Local $oRangeFound
$oRangeFound = _Word_DocFind($oDoc, "appid",$oSearchRange, Default,6)
If @error Then Exit MsgBox($MB_SYSTEMMODAL, "Word UDF: _Word_DocFind Example", _
"Error locating the specified text in the document." & @CRLF & "@error = " & @error & ", @extended = " & @extended)
$appIDone = _Word_DocRangeSet($oDoc, $oRangeFound, Default, 2, Default, 1)
$appIDone.underline = True
;Zweite AppId auslesen
$oSearchRange = _Word_DocRangeSet($oDoc, $oSearchRange, Default,6)
$oRangeFound = _Word_DocFind($oDoc, "appid",$oSearchRange)
If @error Then Exit MsgBox($MB_SYSTEMMODAL, "Word UDF: _Word_DocFind Example", _
"Error locating the specified text in the document." & @CRLF & "@error = " & @error & ", @extended = " & @extended)
$appIDtwo = _Word_DocRangeSet($oDoc, $oRangeFound, Default, 2, Default, 1)
$appIDtwo.underline = True
;Dritte AppId auslesen
$oSearchRange = _Word_DocRangeSet($oDoc,$oSearchRange, Default,6)
$oRangeFound = _Word_DocFind($oDoc, "appid",$oSearchRange)
If @error Then Exit MsgBox($MB_SYSTEMMODAL, "Word UDF: _Word_DocFind Example", _
"Error locating the specified text in the document." & @CRLF & "@error = " & @error & ", @extended = " & @extended)
$appIDthree = _Word_DocRangeSet($oDoc, $oRangeFound, Default, 2, Default, 1)
$appIDthree.underline = True
Alles anzeigen
Ich versuche hier die SearchRange weiter nach hinten zu schieben. Ich habe da auch schon verschiedene Ansätze versucht aber es wird immer nur die zweite appid gefunden...
Kann mir da jemand helfen? Check irgendwie diese word_docrangeset funktion nicht so ganz.