Internet Explorer XMLhttp而不是互联网控件?

时间:2013-03-25 19:06:23

标签: performance vba internet-explorer-8

我正在使用vba代码从网络中获取信息。 一切都很顺利,但需要很长时间:(

我清楚地记得,有另一种获取信息的方法,而不是创建IE对象。

我想我不需要IE Con​​trolls。我只是在一张纸之后加载了一个链接。

另一种“方式”如何运作?它像XMLHttp? 代码有区别吗?不好意思,或者?

谢谢!

1 个答案:

答案 0 :(得分:1)

这就是我使用的:

Function getPage(URLStr As String) As MSHTML.HTMLDocument
    Dim oHttpRequest As MSXML2.XMLHTTP60
    Set oHttpRequest = New MSXML2.XMLHTTP60
    With oHttpRequest
        .Open "GET", URLStr, False
        .send
    End With
    Dim oHTMLDoc As MSHTML.HTMLDocument
    Set oHTMLDoc = New MSHTML.HTMLDocument
    oHTMLDoc.body.innerHTML = oHttpRequest.responseText
    Set getPage = oHTMLDoc
End Function

要调用该函数,请使用以下内容:

Dim oHTMLDoc as MSHTML.HTMLDocument
Set oHTMLDoc = getPage("http://www.example.com")

为此,您需要添加对“Microsoft XML,v6.0”和“Microsoft HTML Object Library”的引用,然后您可以使用MSHTML库根据需要解析代码。