使用VBA从互联网下载谷歌财务文件

时间:2014-07-21 19:04:09

标签: excel-vba vba excel

我正在做一个VBA模块,我想从谷歌财务中下载csv文件。

以下是示例网址

www.google.com/finance/historical?q=LON%3AESSR&ei=dEfGU_ioD4iKwAO3-4HQDg&output=csv

一旦我将此URL放入浏览器,我就会下载一个csv文件。但是当我使用“WinHttpReq”对象下载文件时,我没有得到csv文件。相反,我得到一些HTML。

我是否可以使用VBA中的URL下载此CSV文件?

谢谢, 阿伦。

1 个答案:

答案 0 :(得分:0)

我对WINHTTP并不熟悉,但我似乎能够正常使用XMLHTTP。只需输入您的文件路径&名称在哪里评论

Sub getCSV()

    Dim xhr As Object
    Set xhr = CreateObject("MSXML2.XMLHTTP")

    xhr.Open "GET", "http://www.google.com/finance/historical?q=LON%3AESSR&ei=dEfGU_ioD4iKwAO3-4HQDg&output=csv", False
    xhr.send

    With xhr

        If .Status = 200 And .ReadyState = 4 Then

            myfile = FreeFile

            'HERE
            Open "FILE_PATH_&_NAME.csv" For Output As #myfile
                Print #myfile, .responseText
            Close #myfile

            Set xhr = Nothing

        End If

    End With

End Sub