Lieber Experte,
Lots Leute verwendet folgenden VBA Code, um das wbesite in IE zu steuern, und ich fand etwas instabile Ausgabe oder error in, den Mittel manchmal es Arbeits-O.K. aber manchmal, ich nicht bearbeitet, habe benutzt „Debug.print“ das to check, in dem Störung, gefunden ist an Code-line-11, .document.all mein Code („LOGON“) .click habe Ausgabe mit Readystate we Gebrauch .navigate, die Web site im ersten Mal zu ergreifen, sind Readystate und beschäftigter Zustand von IE gute Markierungsfahne zu bereitem und beschäftigtem see the IE oder nicht. So ist checkreadystate Funktion okay, damit erstes Mal IE erforscht. Aber, wenn ich .doucment.all („LOGON“) .click verwende, um andere siteseite an zweiter Stelle zu ändern, scheint sie, dass Readystate und Checkreadystate Funktion desn't Hilfe viel für Warte-/Monitor„LOGON“ Seite bereit und oder nicht beschäftigt ist. Ich schätze, dass ist, weil Readystate bereits bis zum erstem Mal nagviate „ http://example.com “ wenn erfolgreich an (code-line-7) eingestellt wird und der Benutzer könnte den Zustand von REadystate ausgenommen nicht ändern verließ die IIE Fenster. So versuche füge ich, gesetztes code-line-13 zu setzen und Schlaf (3000) für 3 Sekunden hinzu, verzögere, die VBA Codearbeiten fein. Und einmal setzten wir auch zurück code-line-6 bilden es. Sichtbare IE-Fenster, funktioniert es auch aber nicht alle Male. Es scheint, dass die Ausgabe und die Störung nicht an allen beständig ist, die mit dem Timming des Ladens der „LOGON-“ Seite zusammenhängen konnten. Gibt es jede mögliche Methode, zum, wann das zweite mal vom Laden zu überprüfen Seite bereit und oder nicht beschäftigt ist, aber, erinnert zu werden ihm Malladenseite nach nagviate die erste Ladezeit des ersten Seite
I Mittels Seite ist, z.B. erstes Mal, IE-Forscher und seoncd Zeitladen page means zu steuern, das Sie auf der ersten Seite gründen müssen, bereit ist, um auf die zweite Web site zurückzugreifen, gerade Ähnliches to when Sie Ihre Bank website.
I möchten nicht Funktion des Schlafes (3000) verwenden anmelden und. Sichtbar, zweite Ladenseite ist zu lassen zuerst bevor wir are running unser Rest unseres Programmcodes bereit. What ist der Vorschlag, zum dieser Ausgabe zu lösen? Wenn Sie meine Ausgabe verstehen, mich bitte informieren. Ich erkläre mehr. Bitte advise
Br Duncan
1-Dim myIE, wie SHDocVw.InternetExplorer „Notwendigkeits-Microsoft-Internet Bezugsselected 2-Set myIE = Nothing 3-Set myIE = CreateObject steuert („InternetExplorer. Application“) 4-Set myIE = neues InternetExplorer 5-With myIE 6 -“. Sichtbar = True 7- .navigate „ https:example.com " 8-Call CheckREadyState (myIE, 1) 9- .doucment.all („username“) = " ABC " 10-.doucment.all („password")= " 33443 " 11-.doucment.all (LOGON) .click 12-Call CheckREadyState (myIE, 1) 13- 'Schlaf (3000)
Function CheckReadystate (ByRef myIE als Gegenstand, state1 als ganze Zahl) With myIE tun bis nicht. Beschäftigt und .readyState = READYSTATE_COMPLETE Debug.Print state1 Debug.Print. Busy Debug.Print .readyState DoEvents Loop Ende With End Function
|