我希望我的 VBA 代码能够使用日期 1990-02-22 填充特定网站上的日期字段。
这是我需要填写字段的元素的源代码:
<input id="mainDriver.dateOfBirth" name="mainDriver.dateOfBirth" class="sg-Input user-success" data-date-split-input="true" max="2015-08-14" placeholder="yyyy-mm-dd" data-date-nopicker="true" type="date" value="">
我尝试了以下代码的几种变体:
IE.Document.getElementById("mainDriver.dateOfBirth").Value = DateValue(1990 - 02 - 22)
例如我也尝试过这个:
IE.Document.getElementById("mainDriver.dateOfBirth").Value = DateValue("February 22, 1990")
...根据我在网上搜索的内容,这似乎是表达 DateValue 参数的方式。
在上述两种情况下,页面均不受影响 - 并且代码中未提供任何错误供调试。
任何帮助将不胜感激。
如果您想查看该字段的确切位置,您可以手动填写 IE 字段直至该字段。 IE页面为here .
当您到达这些字段时,您可以使用以下示例来获取地址信息:
邮政编码:COOKS HILL, 2300, NSW
街道地址:33 Bull Street
否则,您可以从下拉列表等中随机选择/选择其他字段的值。
最佳答案
我终于明白了。这是复制源代码中显示的日期格式的问题,即
max="2015-08-14" placeholder="yyyy-mm-dd"
...然后简单地使用 value 属性。所以以下工作有效:
IE.document.getElementById("mainDriver.dateOfBirth").Value = "1990-02-10"
由于某种原因,当代码执行时,它实际上并没有显示出生日期,但日期被正确存储和使用,从而允许您完成表单填写。
否则感谢您的浏览!
关于VBA代码未填写日期,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/32001477/