2014-07-21 63 views
0

我正在做一个VBA模块,我想从谷歌财经下载CSV文件。使用VBA从互联网下载谷歌金融文件

下面是一个简单的URL

www.google.com/finance/historical?q=LON%3AESSR & EI = dEfGU_ioD4iKwAO3-4HQDg &输出= CSV

有一次,我把这个网址在浏览器我下载一个csv文件。但是,当我使用“WinHttpReq”对象来下载文件时,我没有收到csv文件。相反,我得到一些HTML。

无论如何,我可以使用VBA中的URL下载此CSV文件吗?

谢谢, 阿伦。

+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 
+0

辉煌!有效。非常感谢! –