Live-Forum - Die aktuellen Beiträge
Anzeige
Archiv - Navigation
1216to1220
Aktuelles Verzeichnis
Verzeichnis Index
Übersicht Verzeichnisse
Vorheriger Thread
Rückwärts Blättern
Nächster Thread
Vorwärts blättern
Anzeige
HERBERS
Excel-Forum (Archiv)
20+ Jahre Excel-Kompetenz: Von Anwendern, für Anwender
Inhaltsverzeichnis

Unterschied .busy und .readystate

Unterschied .busy und .readystate
Gordon
Moin moin,
ich versuche gerade ein Webformular per Makro abzuarbeiten. Dabei werden auch neue Seiten aufgebaut - sei es durch einen Seitenwechsel oder per Klick im Formular.
Läuft generell auch ganz gut. Aber manchmal stoppt das Makro ausunerfindlichen Gründen. Anscheinend weil die nächste Seite noch nicht schnell genug aufgebaut war. Derzeit benutze ich bei jedem Seitenwechsel den Befehl "Do: Loop Until Browser.Busy = False", wobei Browser mein Object ist.
Mir ist bekannt, dass es auch die Anweisung "Browser.document.ReadyState = "complete"" gibt. Macht die das gleiche wie .busy? Oder ist das noch was anderes, was mir vielleicht helfen könnte?
Danke schon mal für die helfenden Texte....
Gruß
Gordon

4
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Benutzer
Anzeige
AW: Unterschied .busy und .readystate
09.06.2011 11:33:16
Nepumuk
Hallo,
Readystate kann verschidene Zustände zurückgeben: Loading, Loaded, Interactive und Complete.
Wenn Readystate Complete zurück gibt wird Busy automatisch False.
Du solltest in die Schleife noch ein Sleep einbauen, sonst hat der Browser kaum Gelegenheit die Seite zu laden. Oder besser gesagt durch die Belastung des Systems dauert das Laden länger.
Option Explicit

Private Declare Sub Sleep Lib "kernel32.dll" ( _
    ByVal dwMilliseconds As Long)

Public Sub Beispiel()
    Do
        Call Sleep(1000)
    Loop While Browser.Busy
End Sub

Gruß
Nepumuk
Anzeige
AW: Unterschied .busy und .readystate
09.06.2011 11:56:49
Gordon
Danke dir schon mal...aber das mit dem Sleep klappt leider bei mir hier nicht so, da ich eien 64bit-Version von Office hier auf der Arbeit habe... :-(
Gibt es 'ne andere Möglichkeit für ein 'Sleep'?
Gruß
Gordon
AW: Unterschied .busy und .readystate
09.06.2011 12:52:30
Nepumuk
Hallo,
na und? Stell dich nicht so an!
Option Explicit

#If VBA7 Then
Private Declare PtrSafe Sub Sleep Lib "kernel32.dll" ( _
    ByVal dwMilliseconds As Long)
#Else
Private Declare Sub Sleep Lib "kernel32.dll" ( _
    ByVal dwMilliseconds As Long)
#End If

Public Sub Beispiel()
    Do
        Call Sleep(1000)
    Loop While Browser.Busy
End Sub

Gruß
Nepumuk
Anzeige
AW: Unterschied .busy und .readystate
09.06.2011 13:06:28
Gordon
Wie? Mich anstellen? Ich ignoriere jetzt mal den Kommentar.....
...aber danke für die Hilfe....
Gruß
Gordon

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige