HTMLsearch栏点击在Excel中

我真的试图写一块VBA代码,真的可以使用一些帮助! 我想导航到一个特定的网站( http://www.boxofficemojo.com/ ),在search栏中input一个值,然后点击“search”。 我无法让我的代码正确地击中searchbutton。

这是我到目前为止:

Dim objIE As New InternetExplorer Dim Doc As HTMLDocument Dim oSearch As HTMLDivElement Dim oSearchButton As Object Dim SearchElement As MSHTML.IHTMLElementCollection Dim oResult As Object, Element As Object, myLink As Object With objIE .Visible = True .Navigate "http://www.boxofficemojo.com/" Do While objIE.Busy Or objIE.ReadyState <> 4 DoEvents Loop Set Doc = objIE.Document End With Set oSearch = objIE.Document.forms("searchbox").elements("q") oSearch.Value = Sheets("2016").Range("c3").Value Set oSearchButton = objIE.Document.forms("searchbox").getElementsByTagName("input") objIE.Navigate oSearchButton 

现在,我的代码只是导航到谷歌search:[object HTMLInputElement]

searchbutton的HTML如下所示:

 <form name="searchbox" action="/search/q.php" method="POST"> <input name="q" style="width: 90px; font-weight: bold;" type="text"><br> <input type="submit" value="Search..."></form> **<input type="submit" value="Search...">** 

有谁知道我在做什么错? 非常感谢你!

两件事情。 正如在注释中提到的getElementsByTagName返回多个对象。 在你的情况下,你想引用第二个像这样: objIE.Document.forms("searchbox").getElementsByTagName("input")(1)

其次, Navigate只需要IE浏览器的url。 你想单击button,所以只需要: objIE.Document.forms("searchbox").getElementsByTagName("input")(1).Click