0

我正在使用 Wscript shell 来自动下载多个(Excel 文件)。shell 命令为每次下载在 MS Edge 中创建一个新选项卡(和弹出窗口)。我想要的是创建一个新的 Edge 实例,并在完成后关闭它。

设置:我有一家第三方公司通过电子邮件向我发送下载 Excel 文件的链接。如果我单击电子邮件中的链接,则会将文件下载为 Excel 中的受保护视图。Excel 文件由服务器动态生成。

为了自动执行此操作,我有一个 VBA 例程循环遍历这些链接的列表(我已从我的电子邮件中单独提取),并且我正在使用 Wscript shell 对象来驱动 Edge。

代码摘录:

Dim wsh As New WshShell

Dim strCmd As String
strCmd = "microsoft-edge:"

Dim strLink As String
strLink = "https:\\somesite\\someserverprocess"    

wsh.Run strCmd & strLink, WaitOnReturn:=True

这段代码完成了将文件下载到 Excel 中的工作,但在 Edge 中为每个文件留下了一个新选项卡和一个弹出窗口。由于我将在多个文件上循环,所以最后会留下很多选项卡和弹出窗口。我希望创建一个可以让我无人看管的流程,所以一旦这个流程完成,我真的需要整理一下。

我已经阅读了关于 SO 的其他几个关于这个主题的问题(特别是 Edge 缺少 COM 自动化接口),但没有找到答案。我愿意接受建议。虽然我不喜欢使用 Wscript 作为方法,但我更喜欢从 Excel VBA 运行此过程(因为我必须将实际的 Excel 文件作为第二步处理)。

4

1 回答 1

0

这个答案可能有助于 在 VBA 中下载文件并存储它

于 2021-01-27T17:56:24.567 回答