之前我已经在IE 11中编写了VBA,并且能够解决问题,但在此我不断收到错误91或错误424.虽然有时它完美无缺。
不幸的是,由于密码受到保护,我无法共享确切的网站,但我包含了相关的源代码。
我明确选项,所以我的变量应该没有问题。
这些都是我尝试用昨天的日期填充方框的所有不同方式,但没有一种方法有效。
html.getElementById("begin")(1).Value = Format(Date - 1, "mm/dd/yyyy") '<-error 91
Set StartDate = html.getElementById("begin") ‘<- Error 424 or Erorr 80010108
Set EndDate = html.getElementById("end")
Set CampaignID = html.getElementById("campaign_id")
这些是我尝试的4种不同的东西,但它们都是定期工作的。
StartDate.Item(0).Value = Format(Date - 1, "mm/dd/yyyy") ‘<-Error 91
StartDate.Value = Format(Date - 1, "mm/dd/yyyy")
StartDate.Value(0) = Format(Date - 1, "mm/dd/yyyy")
Set StartDate(0).Value = Format(Date - 1, "mm/dd/yyyy
源代码:
<div class="row form-group">
<div class="col-xs-12">
<div class="row">
<div class="pull-left text-left" style="width:115px;margin-left:20px">
<label for="">From :</label>
</div>
div class="col-xs-3">
<input type="text" name="begin" value="" class="form-control input-sm datepicker" id="begin" />
</div>
<div class="col-xs-1 text-right">
<label for="">To :</label>
</div>
<div class="col-xs-3">
<input type="text" name="end" value="" class="form-control input-sm datepicker" id="end" />
</div>
</div>
</div>
</div>
答案 0 :(得分:0)
我明白了。
我登录后刷新了页面。这会重置权限并阻止我更改任何文本框。不知道为什么,但这只是问题的一半。
然后,我更改了变量编辑以运行页面上的“输入”的整个列表,如下所示:
Dim CampaignId, StartDate, EndDate, RunReport As Object
Set StartDate = appIE.Document.getelementbyid("begin")
Set EndDate = appIE.Document.getelementbyid("end")
Set CampaignId = appIE.Document.getelementbyid("campaign_id")
Set RunReport = appIE.Document.getElementsByName("_action_report")
ButtonNum = 0
Set objCollection = appIE.Document.getElementsByTagName("input")
While ButtonNum < objCollection.Length
If objCollection(ButtonNum).Name = "begin" Or _
objCollection(ButtonNum).Name = "end" Then
Set objElement = objCollection(ButtonNum)
objCollection(ButtonNum).Value = Format(Date - 1, "mm/dd/yyyy")
End If
ButtonNum = ButtonNum + 1
Wend
这样就找到了getElementById
失败的页面上的按钮。
感谢您的期待!