首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >使用vba从网站中提取Excel工作簿

使用vba从网站中提取Excel工作簿
EN

Stack Overflow用户
提问于 2015-12-01 11:53:03
回答 1查看 639关注 0票数 1

我试图自动化的数据输入到我的一个模型,从PIMCO网站的基金持有数据库。

网址:https://www.pimco.com/investments/mutual-funds/emerging-markets-bond-fund/inst

我需要从网站中提取控股报告数据(xls工作簿)。

我的守则:

代码语言:javascript
复制
Set elements = HTMLDoc.getElementsByTagName("a")

For Each element In elements
    If InStr(element.innerText, "Holdings Report") Then
        hrefLink = element.href

        IE.navigate hrefLink // This creates a new pop up and a message asking if the file must be saved/opened

        Set wb = Workbooks.Open(element.href) // Throws an error
    End If
Next

单击Holding Report按钮时调用的webservice链接(HrefLink)是

709.XLS&id=QRQg2jRnd9AJrFn%2fOA2Sp0xR09EkWc64pyAEuordzHsARqqpDYmvlBBcIgDokEeCM6cdWs55%2f4wk9gu2ywfEdow%2fMGHlPUWvKY1XdSZmKrA3dh%2f4%2fXZQYr0OIvF2X7n9DExITdx0FiH2Zif6g0MZzESHcGg%2fc8NNWJtiJJ5XM0xuLVVJAXKxIy3Ss94TpsWkZGjcOl%2fqh3hyYNFIRkz2BWGmp7Kb5UUYnPq%2b2wOMX8SlnWx0bj9CCaPaZaoIBhSMcvumJSEOqtmDJhAa%2f1FWPWyayrohG3C%2b5QsHRW7w8onfUCq08RkCaaRpDafTPDobAtrczfeMSCHldvK2S5dv6v39eWx358pDYNilnNnjDXv7al%2bfXyjglUYZFabL210V https://www.pimco.com/handlers/displaydocument.ashx?c=72201P522&wd=Holdings Report&fn=PIMCO基金新兴市场公司债券基金

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2015-12-01 13:16:24

基于此:How do i download a file using VBA (Without internet explorer)

代码语言:javascript
复制
    Sub DownloadFile()

    Dim myURL As String
    myURL = "https://YourWebSite.com/?your_query_parameters"

For Each element In elements
    If InStr(element.innerText, "Holdings Report") Then

    Dim WinHttpReq As Object
    Set WinHttpReq = CreateObject("Microsoft.XMLHTTP")
    WinHttpReq.Open "GET", myURL, False, "username", "password"
    WinHttpReq.send

    myURL = WinHttpReq.responseBody
    If WinHttpReq.Status = 200 Then
        Set oStream = CreateObject("ADODB.Stream")
        oStream.Open
        oStream.Type = 1
        oStream.Write WinHttpReq.responseBody
        oStream.SaveToFile "C:\file.csv", 2 ' 1 = no overwrite, 2 = overwrite
        oStream.Close
    End If
Next    
End Sub

希望能帮上忙!

票数 2
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/34019807

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档