Vba 打开从网站下载的文件

Vba 打开从网站下载的文件,vba,excel,Vba,Excel,我可以访问该网站并点击下载按钮,一旦我点击它,下载对话框在底部打开,按钮打开,保存,取消。我想点击打开按钮,以可爱的pdf格式打印打开的文件 如何单击“打开”按钮请帮助我 用于单击下载按钮的代码 ie2.Document.forms("ViewReferral").getElementsByClassName("notsuccess")(0).getElementsByTagName("tr").Item(1).getElementsByTagName("td").Item(3).getEle

我可以访问该网站并点击下载按钮,一旦我点击它,下载对话框在底部打开,按钮打开,保存,取消。我想点击打开按钮,以可爱的pdf格式打印打开的文件

如何单击“打开”按钮请帮助我

用于单击下载按钮的代码

ie2.Document.forms("ViewReferral").getElementsByClassName("notsuccess")(0).getElementsByTagName("tr").Item(1).getElementsByTagName("td").Item(3).getElementsByTagName("A").Item(0).Click
一旦我点击它上面提到的对话框打开


谢谢。

您无需点击浏览器“打开/保存/取消”栏上的按钮,只要能够检索完整的URL(即,
http://......attached_doc135155.pdf
)通过任何刮削方法


使用VBA从URL下载文件
()

该按钮不是网页的一部分。你试过研究如何点击IE命令按钮吗?还有,名字是否总是一样的?有更简单的方法下载文件。是的,你是正确的,它不是网页的一部分。我做了一些研究,并试图直接下载它,而不点击下载按钮使用“href”在网站上,但它失败了。那么你可以检索文件的完整url?例如:如果手动检索并将其粘贴到浏览器的地址栏中,文件是否下载?我无法获取完整的URL,因为一旦单击按钮,它将无法导航到另一个浏览器href=../common/documentation.php?Action=Print&DocumentationId=XXXX&origin=viewreferral。php@arunv也许我会非常感谢你的时间@ashleedawg,因为我没有一个完整的url,所以它不起作用。
Option Explicit

Sub downloadFile(url As String, filePath As String)

    Dim WinHttpReq As Object, attempts As Integer, oStream
    attempts = 3
    On Error GoTo TryAgain
TryAgain:
    attempts = attempts - 1
    Err.Clear
    If attempts > 0 Then
        Set WinHttpReq = CreateObject("Microsoft.XMLHTTP")
        WinHttpReq.Open "GET", url, False
        WinHttpReq.send

        If WinHttpReq.Status = 200 Then
            Set oStream = CreateObject("ADODB.Stream")
            oStream.Open
            oStream.Type = 1
            oStream.Write WinHttpReq.responseBody
            oStream.SaveToFile filePath, 2 ' 1 = no overwrite, 2 = overwrite
            oStream.Close
            MsgBox "File downloaded to:" & vbLf & filePath
        End If
    Else
        MsgBox "Failed."
    End If

End Sub

Sub testDownload()
    Const testFileURL = "http://ipv4.download.thinkbroadband.com/5MB.zip"
    Const localSavePathFile = "c:\5MB_testfile.zip"
    downloadFile testFileURL, localSavePathFile
End Sub