如何使用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
相关产品推荐
相关产品推荐

