【发布时间】:2016-11-26 08:47:17
【问题描述】:
你好 StackOverflow 社区,
我有一个关于使用 VBA 操作 IE 的问题。
代码是关于在网站的字段中编写文本。在该字段中写入的唯一方法似乎是通过 SendKeys (everything else failed)。这样做的问题是,我必须更改两者之间的格式(您可以使用“单击”命令使其变为粗体):
Application.SendKeys "Here is the first text", True
IEApp.document.forms(0).elements(1).Click
Application.SendKeys "Here is the second text", True
遗憾的是,代码没有按计划运行:即使我添加了“True”以确保它等待执行第二个命令,但它开始在第一个文本中间的某处写粗体。因此我有了等待使用的想法
Application.Wait (Now + TimeValue("0:00:01"))
但它失去了应用程序的焦点,我最终无法发送我正在填写的表格。我的下一个想法是通过在不使用最后一个命令的情况下计算一些东西来延迟它:
c = 1000000
For i = 1 To 100
c = c / 7
Next i
这导致第一个文本的一部分被写出,然后格式发生变化,下一个文本从第一个文本开始中断。
有人有想法吗?
【问题讨论】:
标签: html excel forms vba internet-explorer