Wie Sie VBA-catch-request timeout der Fehler?

Ich bin mit Objekt MSXML2.ServerXMLHTTP60 senden Anfrage an webservice; mit diesem Objekt kann ich beschleunigen das laden von Daten von asynchrone Methode und vermeiden Absturz Excel-Bildschirm (reagiert nicht). Aber, ich bin immer noch ein problem haben, wenn der webservice-Antwort für eine lange Zeit, aus ServerXMLHTTP60 timeout-Einstellung, wird die Anfrage-Funktion war still, ich kann nicht fangen timeout-Fehler. Bei eine andere Frage, @osknows schlägt mit xmlhttp status = 408 zu fangen timeout-Fehler, aber es funktioniert nicht für mich.

Habe ich war eine test-Datei, die Sie herunterladen können hier. Öffnen VBA-Quelle durch drücken Atl + F8 sehen Sie Klasse Modul CXMLHTTPHandler, dass ich kopiert aus diese Anleitung

    If m_xmlHttp.readyState = 4 Then
        If m_xmlHttp.Status = 200 Then
            MsgBox m_xmlHttp.responseText
        ElseIf m_xmlHttp.Status = 408 Then 'Debug never run to here?
            MsgBox "Request timeout"
        Else
         'Error happened
        End If
    End If

, Wie Sie VBA-catch-request timeout der Fehler?

Danke für Eure Hilfe!

InformationsquelleAutor Davuz | 2012-07-23
Schreibe einen Kommentar