要在网页上查找项目通过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