0

在 Excel2003 中,我试图从雅虎财经中检索一些内容。

到目前为止,我有一个非常简单的子:

Public Sub test(BaseRange As Range)

    Dim xmlObject As New MSXML2.XMLHTTP60
    Dim xmlDoc As New MSXML2.DOMDocument

    With xmlObject
        Call .Open("GET", "http://biz.yahoo.com/research/earncal/20110923.html", False)
        Call .send
    End With


    With ActiveSheet.Range("F2")
        .Value = xmlObject.responseXML.XML
    End With

End Sub

子执行没有错误,并且 xmlObject.responseText 似乎包含页面 html 文本,但 xmlObject.responseXml.XML 为空。除了 resonsetext 一切实际上都是空的。

我在这里想念什么?

4

3 回答 3

2

值得指出的是,已经有一个开源项目可以做到这一点: http: //excel-dna.net/2011/04/28/financial-analytics-suite-finansu-made-with-excel-dna/

我希望这对你有用

于 2012-09-24T16:10:39.643 回答
1

如果服务器返回 XML 响应,则 responseXml 中只有内容。似乎您的 URL 返回 HTML 而不是 XML。

于 2012-09-25T03:58:42.347 回答
0

这是我用于欧洲央行外汇汇率的。

Sub ecb_fx()
ActiveWorkbook.XMLIMPORT url:= _

        "https://www.ecb.europa.eu/stats/eurofxref/eurofxref-hist.xml", ImportMap:=Nothing, _
        Overwrite:=True, Destination:=Range("$B$6")
End Sub
于 2016-08-17T15:15:47.893 回答