【发布时间】:2023-12-18 14:11:02
【问题描述】:
我正在尝试从我公司的网站下载一份报告以用于报告目的。
步骤:
- 打开 IE
- 去下载链接
- 点击解压按钮
- 点击IE对话框中的打开按钮(保存/打开/取消框)
- 将数据复制到我的活动工作簿的工作表 1
- 关闭 IE
我已经完成了第 3 步。我在第 4 步遇到问题。我尝试了以下解决方案,但它们对我不起作用。
How to check if Open/Save/Cancel bar appeared
Automate saveas dialogue for IE9 (vba)
使用的代码:
Sub ExtractGLfile()
Set ie = New InternetExplorerMedium
Dim DLCPortalGL As String
DLCPortalGL = "link"
ie.Visible = True
ie.navigate (DLCPortalGL)
Do
DoEvents
Loop Until ie.readyState = READYSTATE_COMPLETE
ie.document.getElementById("ButtonID").Click
我需要关于第 4 步的帮助 - 点击打开/保存/取消按钮的打开。
更新:我可以使用以下代码下载文件
Application.SendKeys "%{O}", True
newHour = Hour(Now())
newMinute = Minute(Now())
newSecond = Second(Now()) + 10
waitTime = TimeSerial(newHour, newMinute, newSecond)
Application.Wait waitTime
SendKeys "{TAB}", True
SendKeys "{ENTER}", True
但是,当文件打开时,我收到错误:enter image description here 有什么建议吗?
【问题讨论】:
-
目前无法回答您的问题。您需要包含Minimal, Complete and Verifiable Example
-
@QHarr 我感谢您的反馈。我为前面的问题道歉。谢谢
-
您好,感谢您的回复。使用我之前描述的 sn-p 工具查看相关的 HTML 会有所帮助,还可以让您详细说明什么是不起作用的意思?您的点击正在工作并且文件已下载,但现在您无法按另存为/打开对话框?当你说在 sheet1 中打开时……你想将数据传输到 sheet1 吗?您正在下载的文档是否只有一张纸?你打算用这些数据做什么?它会去哪里?
-
注意到了。是的,单击正在工作,我无法按活动工作簿工作表 1 中的保存/打开选项卡。是的,我想为我的报告传输工作表 1 中的数据。这些数据是我报告的输入。
-
有很多关于 SO 的问答,用于点击 IE 的保存/打开对话框部分。看看那些。如果您可以找到与下载相关的 URL,那么下面的答案是直接下载的一种方法。然后,您可以将文件作为打开目标。
标签: excel vba ms-access internet-explorer web-scraping