这是我在stackoverflow上的第一个问题!
我一直在寻找这个问题的解决方案一段时间,但没有找到任何帮助。我可能只是在我的搜索中使用了错误的关键字,但到目前为止我没有运气。这是问题:
在VBA中,如何从Internet Explorer的文件下载对话框中选择“打开”选项?
只是为了进一步澄清,我说的是在下载文件时,IE9中屏幕底部弹出的黄橙色条。
我正在做一些VBA自动化,使用Internet Explorer从网上下载数百个PDF,但是有一个中间步骤,在我到达实际的PDF之前必须打开.fdf文件。所以我首先需要选择“打开”选项,以便我可以继续进行自动化的下一步。就像我之前说过的那样,我做了很多搜索,到目前为止没有运气。
我已经尝试过使用SendKeys
希望Enter会起作用,这是最后的努力没有奏效。
在此先感谢您的帮助!
发布于 2019-04-17 07:51:58
我在这里广泛报道了这一点。
主题:VBA / VB.Net / VB6-单击IE下载窗口中的打开/保存/取消按钮 - 第一部分
链接:http://www.siddharthrout.com/2011/10/23/vbavb-netvb6click-opensavecancel-button-on-ie-download-window/
编辑(IMP)如果您使用的是IE 9请不要忘记阅读第2部分,因为它包含并涵盖IE 9下载窗口的窗口结构
主题:VBA / VB.Net / VB6-单击IE下载窗口中的打开/保存/取消按钮 - 第二部分
链接:http://www.siddharthrout.com/2012/02/02/vbavb-netvb6click-opensavecancel-button-on-ie-download-window-part-ii/
以上链接讨论了如何使用API来实现您想要的。
从第一个链接......
像你我一样,我们都有名字,类似的窗口有“句柄”(hWnd),类等。一旦你知道那是什么,就更容易与那个窗口进行交互。 在这种情况下,Findwindow API通过使用窗口的类名和标题(“文件下载”)来查找特定窗口的hWnd。“打开”,“保存”和“取消”按钮本身就是窗口,但它们是主窗口的子窗口,即“文件下载”。这意味着每个人都有一个hWnd :)为了找到子窗口,我们不使用FindWindow但使用FindWindowEx。所有三个按钮“打开”,“保存”和“取消”都具有相同的类,即“按钮”。
https://stackoverflow.com/questions/-100005173
复制相似问题