当前位置: 首页 > 知识库问答 >
问题:

VBA和IE浏览器:填写输入框

萧丁雨
2023-03-14

我不熟悉在VBA和Internet Explorer之间进行交互,但我在网上阅读了很多东西,无法解决代码中的问题。我只想检索网站上的“用户名”框并在其中添加一个值。所以我将所有输入框检索到超文本标记语言元素的集合中,但该集合是空的:

Dim Collect As IHTMLElementCollection

With IE
    .navigate "http:xxxxxxxxxx"
    .Visible = True
End With

Do While IE.Busy
Loop

Set Collect = IE.document.getElementsByTagName("input")
MsgBox Collect.Length
End Sub

这将给出一个带有“0”的消息框。如果我在代码末尾之前切换断点并“观察”变量集合,我可以看到里面有17个项目,其中一个是用户名“输入框”,名称为“tfUserName”。你能帮我吗?

编辑:我发现问题来自以下代码:

    Do While IE.Busy
    Loop

我用这个代替了它:

    Do Until IE.readyState = READYSTATE_COMPLETE
        DoEvents
    Loop

现在一切正常。感谢您的回复。

共有1个答案

何玺
2023-03-14

改为对照null验证集合,以确定它是否包含元素

If Not Collect Is Nothing Then
  For Each htmlElement In Collect
    If Not htmlElement.getAttribute("username") Is Nothing Then
       htmlElement.setAttribute("value", "licou6")
       Exit For
    End If
  Next
End If
 类似资料:
  • 问题内容: 我有2种基本形式-登录和注册,都在同一页面上。现在,我可以自动填写表单登录了, 但是注册表单也会自动填写,我不喜欢它。 此外,表单样式的背景为黄色,我无法覆盖它,也不想使用内联CSS来实现。我该怎么办才能使它们停止变为黄色 和(可能)自动填充 ?提前致谢! 问题答案: 对于自动完成,可以使用: 关于着色问题: 从您的屏幕截图中,我可以看到该webkit生成以下样式: 1)由于#id样式

  • 概览 本章描述了IE在处理自定义的HTML属性和标签时的一些独特之处。如果你要让你的AngularJS应用兼容IE8和IE8以下的版本的话,你需要仔阅读本章。 简易版 要让你的AngularJS应用在IE中正常运行你必须: 确保JSON字符串能被正常解析(IE7需要),你可以使用JSON2或者JSON3来实现。 你不能使用自定义的元素标签,如<ng:view>(你只能使用属性的形式,如<div n

  • 问题内容: 我想在用户打印某个网页时将一些信息发送回我的数据库。我可以使用和在IE中执行此操作,但是我想使用与浏览器无关的方法来执行相同的操作。只要完成就不必关心我必须使用哪种技术组合(PHP,MySQL,JavaScript,HTML)。有任何想法吗? 编辑: 仍然有一些问题。我尝试将函数作为图像放置在我的计算机中,但是我将其弄乱了一些。然后,我尝试仅添加一个事件侦听器,但是我也无法使其正常运行

  • 本文向大家介绍IE浏览器下PNG相关功能,包括了IE浏览器下PNG相关功能的使用技巧和注意事项,需要的朋友参考一下 目前互联网对于网页效果要求越来越高,不可避免的用到PNG图片,PNG分为几种格 式,PNG8 PNG24 PNG32,其中最常用的,也是显示效果和大小比较适中的则是PNG24,支持半透明,透明,颜色也非常丰富,但由于咱们国人使用IE系列或以IE为内核系列的浏览器占大多数,并且由于 W

  • 本文向大家介绍js判断当前浏览器类型,判断IE浏览器方法,包括了js判断当前浏览器类型,判断IE浏览器方法的使用技巧和注意事项,需要的朋友参考一下 判断IE浏览器最短方法:var isIE = !-[1,] 原理:[1,]在标准浏览器中返回"1",相当于调用[1,].toString(),在IE中返回"1," 在这个时候对返回值使用负号强制转换为数字时,标准浏览器返回1,IE则返回NaN, 再对1

  • 问题内容: 我有5个FF,Chrome,IE,Opera和Safari插件/扩展程序。 如何识别用户浏览器并重定向(一旦单击安装按钮)下载相应的插件? 问题答案: 谷歌浏览器可靠检测通常会导致检查用户代理字符串。这种方法不可靠,因为欺骗这个值很简单。 仅在确实需要时才使用浏览器检测方法,例如显示特定于浏览器的安装扩展说明。尽可能使用特征检测。 可靠性分析 在先前的方法依赖于渲染引擎的性质来检测浏览