【问题标题】:How to interact with IE script prompt VBA?如何与 IE 脚本提示 VBA 交互?
【发布时间】:2021-04-10 10:20:22
【问题描述】:

我自动点击网页上的一个按钮,它会在 Internet Explorer 的左上角弹出一个看起来像这样的弹出“窗口”

问题是,当它处于活动状态时,我似乎无法运行任何代码,我试图仅在其中使用 SendKeys“输入”,但代码仅在窗口消失后执行。当它似乎暂停我的运行时时,如何在其上执行代码?


为“window.prompt”函数的位置添加了图片参考。

如何从 VBA 编辑此实例中的变量“t”?我的意思是将其设置为返回 null 以跳过它。

【问题讨论】:

  • 点击按钮是只显示这个提示还是在后台进行其他操作?作为替代方案,您可以尝试使用 XML HTTP 请求。此外,您还可以尝试使用任何 UI 自动化库单击提示上的 OK 按钮。如果可能的话,请您尝试提供有关该问题的更多信息可能有助于缩小问题范围。
  • 它只会显示该提示,但一旦提示完成,它就会下载文件。我今天要尝试很多事情,所以我会回复你
  • @TimWilliams 用于更改 window.prompt,我找到了该函数,但它在 JScript 文件中保存为变量。图片参考添加到帖子。有什么方法可以从 VBA 中编辑 JS 变量?

标签: excel vba internet-explorer


【解决方案1】:

只要在触发你发布的脚本之前替换window.prompt就可以了:

   iedoc.parentWindow.execScript _
           "window.prompt = function(){return 'whatever.csv';};", "JScript"

iedoc 是您的文档对象。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2021-04-14
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多