You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何使用VBA保存下载的Excel文件?附代码及解决过程

VBA实现Excel文件下载:从中间页面到直接链接的解决方案

我编写了一段简单的VBA代码,用于访问链接下载Excel文件,但该链接指向的是一个会触发文件下载的中间HTML页面。目前我能成功访问该链接,但不知道如何保存下载的文件。作为VBA新手,我多方查找资料都没有找到解决办法,请求协助。

我的初始代码如下:

Private pWebAddress As String

Public Declare PtrSafe Function ShellExecute _
Lib "shell32.dll" _
Alias "ShellExecuteA" _
(ByVal hwnd As Long, _
ByVal lpOperation As String, ByVal lpFile As String, _
ByVal lpParameters As String, ByVal lpDirectory As String, _
ByVal nShowCmd As Long) As Long

Public Sub NewShell(cmdLine As String, lngWindowHndl As Long)
    ShellExecute lngWindowHndl, "open", cmdLine, "", "", 1
End Sub

Public Sub WebPage()
    Let pWebAddress = "https://imea.com.br/imea-site/arquivo-externo?categoria=relatorio-de-mercado&arquivo=cup-milho&numeropublicacao=4"
    
    Call NewShell(pWebAddress, 3)
End Sub

在Tim的帮助下,我找到了问题的关键:将中间页面的链接替换为Excel文件的直接下载链接,就能通过VBA直接打开并保存文件。最终实现的代码如下:

Dim wb As Workbook

Set wb = Workbooks.Open("替换为文件直接下载链接")
wb.SaveAs "替换为本地保存路径及文件名"
wb.Close

感谢Tim的帮助,原本棘手的问题变得简单易解。

内容的提问来源于stack exchange,提问作者Antonio Castro

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.08.08 03:05:12