vba - How to Dim a getElementsBy* result -
i doing internet searching vba, , @ 1 point have line
set valueresult = currpage.getelementbyid("rg_s").getelementsbytagname("img")
where currpage
declared htmldocument
and i'm wondering how dim
valueresult
achieve:
- intellisense (vba's autocomplete) results
- better execution times (by using specific rather default
variant
type)
when @ locals window, i'm told set
gives disphtmlelementcollection
type, that's not option when dim
. i've read getelementsby*
returns node list
opposed array, i've been trying follow avenue, can't find vba specific.
so how should declare it? - @ moment i've got dim valueresult object
that's hardly better variant
, doesn't give intellisense prompts.
nb. have microsoft html object library ticked
it should ihtmlelementcollection
type.
dim valueresult ihtmlelementcollection '// code here set valueresult = currpage.getelementbyid("rg_s").getelementsbytagname("img")
the getelementsbytagname()
method return collection
because there potentially multiple matches. getelementbyid()
method return element, ihtmlelement
quick example:
sub test() dim col ihtmlelementcollection dim item ihtmlelement set ie = createobject("internetexplorer.application") ie.navigate "http://www.google.co.uk" while ie.readystate <> 4 doevents wend set col = ie.document.getelementsbytagname("a") each in col set item = debug.print item.outertext next ie.quit end sub
Comments
Post a Comment