使用Excel VBA将值输入Internet Explorer文本框

时间:2014-08-08 22:53:09

标签: vba internet-explorer excel-vba excel

VBA / StackOverflow /等新手。我的代码当前打开Internet Explorer,导航到URL,检查它是否已登录,必要时登录,然后导航到新页面。

现在我想将一个字符串值输入到Internet Explorer文本框中。

以下是相关元素的HTML源代码:

<input type="text" class="search_customDate" name="dateFrom" id="dateFrom"
value="mm/dd/yy" size="13" 
onchange="RTSDHTMLUTIL.getRTSDHTML('dateFrom').onChange(event);" 
OnFocus OnBlur />

<input type="text" class="search_customDate" name="dateTo" id="dateTo" 
value="mm/dd/yy" size="13" 
onchange="RTSDHTMLUTIL.getRTSDHTML('dateTo').onChange(event);" 
OnFocus OnBlur />    <INPUT id="dateTo" class="search_customDate" 

<input type="text" class="search_companyLookupField" name="tokens" id="tokens" 
value title OnChange OnMouseOver OnMouseOut OnKeyDown="doLookup(event);" 
OnKeyUp OnFocus OnBlur OnDisable />

这是我的代码的相关部分:

'Input From and To dates
Dim DateFrom As Object ' MSHTML.HTMLInputElement
Set DateFrom = AppIE.Document.getElementByID("dateFrom")
If Not DateFrom Is Nothing Then
    DateFrom(0).Value = "05/05/05"
End If

Dim DateTo As Object ' MSHTML.HTMLInputElement
Set DateTo = AppIE.Document.getElementByID("dateTo")
If Not DateTo Is Nothing Then
    DateTo(0).Value = "06/06/06"
End If

Dim Ticker As Object ' MSHTML.HTMLInputElement
Set Ticker = AppIE.Document.getElementByID("tokens")
If Not Ticker Is Nothing Then
   Ticker(0).Value = "XYZ"
End If

截至目前,文本框中没有任何内容,我似乎无法弄清楚原因。会爱任何人的意见。

由于

1 个答案:

答案 0 :(得分:0)

我将从哪里开始:

  • 删除&#34;(0)&#34;在HTML元素变量名称之后 - getElementByID方法返回唯一元素,而不是集合
  • 确保您尝试检索的HTML输入元素实际上没有返回任何内容