0
我是新來的VBA和Internet Explorer之間的交互,但我已經在網上閱讀了很多東西,無法找出我的代碼中的問題。我只想檢索網站上的「用戶名」框並在其中添加值。所以,我檢索到的所有輸入框到HTML元素的集合,但那麼集合爲空: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」。如果我在代碼結束之前切換斷點,並「查看」變量Collect
,我可以看到裏面有17個項目,其中一個是用戶名'inputbox',名稱爲'tfUserName'。你能幫我嗎?
編輯:我發現問題來源於此代碼:
Do While IE.Busy
Loop
其中我替換爲:
Do Until IE.readyState = READYSTATE_COMPLETE
DoEvents
Loop
而現在一切工作正常。謝謝你的回覆。
您可以張貼在輸入框的HTML? – 2014-12-05 15:32:14