我試圖寫一個簡短的VBA代碼,通過它的類名首搜索點擊一個按鈕,在網站上,然後通過ID getElementsByClassName方法使用:VBA與getelementsbyid
Sub Autoclick[enter image description here][1]()
Dim IE As Object
Set IE = CreateObject("InternetExplorer.Application")
IE.Navigate "http://stackoverflow.com/"
IE.Visible = True
While IE.Busy
DoEvents
Wend
IE.Document.getElementsByClassname("nav mainnavs").getElementById("nav-jobs").Click
End Sub
但是代碼不會點擊Jobs按鈕。我知道我可以直接使用getelementbyid,但我仍然想知道爲什麼使用getelementsbyclassname和getelementbyid不起作用。
附加圖片包含網站的html代碼。
非常感謝您的幫助!
您需要指定元素集合的索引。 getElementsByClassName憑藉其名稱返回多個元素,這些多個記錄將返回到Collection中。要指定您想要的元素,您可以執行以下操作。 IE.Document.getElementsByClassname(「nav mainnavs」)(0)。 (0)部分表示返回第一個元素。將它們結合在一起,可以這樣做:IE.Document.getElementsByClassname(「nav mainnavs」)。getElementById(「nav-jobs」)。單擊。 –