要在網頁上查找項目通過VBA來選擇,你需要按F12步入開發工具在網頁上。
到那裏後,您可以通過「進入」頁面上的代碼並選擇希望VAB選擇的項目來找到要調用的元素。
這裏是如何做到這一點:
然後選擇用戶名框:
選擇此選項後,在開發商框中的代碼將被高亮顯示,告訴你什麼代碼是鏈接到你按下的項目。
下面是用戶名框現在突出顯示的代碼:
我們有三個選項,選擇頁面上的項目:
- IE.document.getElementById(找到ID ='USERNAME'
- IE.document.getElementsByName(在代碼中找到Name =,這裏name ='USERNAME')
- IE.document.getElementsByclassname(在代碼中找到class =。在這種情況下,類=「專注」)
*注:儘量使用首先使用的ID,然後命名,那麼類僅1個元素將有1號,但多個項目具有相同的名稱或類別,或者如果您擁有正確的ID,則保證其可以正常工作。
Dim IE As Object ' InternetExplorer.Application
Dim UserN As Object 'username field
Dim PW As Object 'password field
Dim LoginButton As Object 'Login button
'enter username and password in textboxes
Set UserN = IE.document.getElementByID("USERNAME")
'fill in first element named "username", assumed to be the login name field
UserN(0).Value = ""
Set PW = IE.document.getElementsByName("PASSWORD")
'fill in first element named "password", assumed to be the password field
PW(0).Value = ""
然後,您需要在頁面上找到botton,然後單擊它。 下面是一些代碼:
'After entering in the user/pass, we need to click the button.
Dim objCollection As Object
Set objCollection = IE.document.getElementById("loginbutton")
objCollection.Click
有關於如何正確使用每一個選擇方法在那裏一噸多的信息和更多的代碼,所以這只是準系統,讓你開始。 搜索'VBA IE自動化'將爲您提供一些很好的結果。
赫爾姆斯嗨。不確定這部分是否正確。 UserN(0).Value =「」。 getElementByID不返回集合,只是一個對象。根據定義,ID應該是唯一的頁面。請參閱:http://www.w3schools.com/jsref/met_document_getelementbyid.asp –
執行上述代碼後,會出現編譯錯誤:對象變量或未設置塊變量 – Shank