【发布时间】:2022-03-09 11:01:05
【问题描述】:
我正在尝试自动登录,然后在我的办公室内部应用程序中选择日期范围,以使用 VBA excel 2013 脚本节省我的时间。我成功地能够登录并且将日期和时间传递到字段。 点击提交后,会弹出一个对话框。
我无法在浏览器生成的弹出窗口中点击“是”。
在此之前,下面的 vba 代码可以正常工作。
Sub automaticformfilling()
Dim ie As Object
Set ie = CreateObject("internetexplorer.application")
With ie
.Visible = True
.navigate "http://abcd/default.asp"
Do While .busy
DoEvents
Loop
Do While .readystate <> 4
DoEvents
Loop
End With
Set fname = ie.document.getelementbyid("txtEmpId")
fname.Value = "abc"
Set pass = ie.document.getelementbyid("txtPassword")
pass.Value = "abc2017"
ie.document.getelementbyid("image1").Click
Set fdate1 = ie.document.getelementsbyname("fmSLADt")(0)
fdate1.Value = "12/08/2017"
Set ftime1 = ie.document.getelementsbyname("fmSLATm")(0)
ftime1.Value = "00:00:00"
ie.document.getElementsByTagName("img")(11).Click
在这部分之后,我需要点击弹出框中的“是”才能继续。
【问题讨论】:
-
什么是弹出对话框,内部应用?能否分享一下对话框截图,以及网页HTML内容的相关部分?
-
如果您对所有四个
.value指令ie.document.getelementbyid("txtEmpId").Value = "abc"使用这种格式,您可以使您的代码不那么混乱 -
@omegastripes 我更新了对话框的截图。由于安全原因,我不能分享 html 代码。
-
您需要确定网页的 HTML 是否包含可用于确定您尝试下载的文件的 URL 的数据。
-
@jsotola 它是一个基于 asp.net 和 mysql 的应用程序。我在其中根据某些日期限制获取数据。我无法直接从 html 的任何链接下载数据。在弹出窗口中单击“确定”是剩下的唯一选项。