【问题标题】:How to enter data in browse (for a file) dialogue box using VBA?如何使用 VBA 在浏览(文件)对话框中输入数据?
【发布时间】:2020-09-11 09:00:38
【问题描述】:

我正在处理网页并使用 VBA 单击“浏览”按钮。 功能是上传文件。因此,当单击浏览按钮时,浏览窗口将打开,并且必须输入文件路径名。

我正在从 Excel 工作表中复制路径名称并尝试将其粘贴到“浏览”窗口中。

我的问题是我无法将文件路径名粘贴到浏览窗口中。

点击按钮后的行直到我没有手动干预并在浏览窗口中输入路径才会执行。

我想粘贴路径名并按 Enter 以便接受该路径。

HTML 代码如下所示:

<input type = "file" id="Browse_ID"....>

我的 VBA 代码在 tagx 之后停止。单击并等待手动输入:

set ieDoc = ieApp.document
set Tags = ieDoc.getElementsByTagName("input")

For Each tagx in Tags

If tagx.ID = "Browse_ID" Then

   'Copy data to be pasted in Browse dialogue box
   ActiveWorkbook.Sheets("Sheet7").Range("D11").Select
   Selection.Copy

   'Click on Browse
   tagx.Click

   'Paste by sending keys control v
   SendKeys "{^v}"

   'Send Enter key so that the path of the file that is entered is accepted and
    'dialogue box closes
   SendKeys "~"

 exit For
 End IF
 Next

我尝试使用 Do while,但也没有用:

   'Copy data to be pasted in Browse dialogue box
   ActiveWorkbook.Sheets("Sheet7").Range("D11").Select
   Selection.Copy

   Do while (tagx.Click = True)

   'Paste by sending keys control v
   SendKeys "{^v}"

   'Send Enter key so that the path of the file that is entered is accepted and
    'dialogue box closes
   SendKeys "~"
   Loop

请帮忙!

【问题讨论】:

  • 你能给我看看链接吗?
  • 该网站仅限于我公司的员工。 :( 我只是在检查是否有具有类似属性的站点。找到一个。不确定它的作用。使用它时要小心:“megafileupload.com”。您可以使用任何具有文件上传选项的站点并且它的 HTML 代码和我提到的一样。
  • The page you are looking for cannot be found
  • 如果我没记错的话,那么在这种情况下,您将不得不使用 API。见THIS你得用类似的逻辑

标签: vba excel


【解决方案1】:

尝试直接在 Excel 中使用 WebBrowser 对象...然后使用导航属性..

【讨论】:

  • 这不能回答问题:)
  • 我不知道该怎么做。你能否详细说明一下。我不知道如何获取单击浏览文件按钮时弹出的浏览窗口的对象。
  • 呵呵,有时候授人以鱼不如授人以渔…… :) 进入开发者菜单——插入——更多对象——选择微软浏览器
  • 如果你的帖子是正确的,我会是第一个支持它的人 :) 这不能回答问题的两个原因。 1您建议用户使用“.Navigate”,这不是用户要求的。问题是 OP 无法在“浏览”窗口中粘贴文件名。 2 当您使用网络浏览器并打开窗口时,它会以模态方式打开。这意味着在您将窗口处理掉之前不会运行任何代码,这又是无用的,因此创建 IE 实例然后使用 API 写入窗口是很重要的。请参阅 OP 的 Qtn 下方的链接。
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2011-09-21
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多