VBA Web自动化

我试图写一个macros来访问来自Web门户的数据,在那里我需要启动网站,然后点击“在Excel中打开”button。

我已经启动了网页,但是我不能点击链接。 我的理解是我应该可以做类似这样的事情:

BrowswerObject.Document.ElementID.Click 

但我不确定正确的元素和编码是什么。 一个网页,当我检查元素它有这个代码:

 <A onclick=ur_Button_click(event); tabIndex=0 id=BUTTON_TOOLBAR_STANDARD_btn7_acButton title="Open in Excel" class=urBtnStd onkeydown=ur_Button_keypress(event); style="OVERFLOW: visible; TEXT-ALIGN: center" href="javascript:void(0);" ct="B" ti="0" st="" ocl="sapbi_page.sendCommandArray([['GUID','11',0],['NOUILOCK','X',0],['BI_COMMAND_TYPE','ABSTRACT',0]],event);">Open in Excel</A> 

任何人都可以指出我应该专注于此?

编辑:我已经尝试了getElementByID,但我跑到这个错误:对象'IWebBrowser2'的方法'文档'失败

通过示例代码是:

 Dim ie As Object Set ie = CreateObject("Internetexplorer.Application") ie.Visible = True ie.Navigate *Link* ie.document.getElementById("BUTTON_TOOLBAR_STANDARD_btn7_acButton ").Click 

你是对的,应该是这样的。 。 。

 For Each oHTML_Element In HTMLDoc.getElementsByTagName("input") If oHTML_Element.Type = "submit" Then oHTML_Element.Click: Exit For Next 

有关更多信息,请访问http://vbadud.blogspot.com/2009/08/how-to-login-to-website-using-vba.html#gurMeXG3KmWvFUMx.99

查看button的ID名称的最佳方法是在站点上时按F12。 如果您使用Firefox和F12什么都不做,请下载Firebug。

https://addons.mozilla.org/en-US/firefox/addon/firebug/

如果您使用IE并且按F12时没有任何反应,请下载并安装IE Developer Tool。

https://msdn.microsoft.com/en-us/library/bg182326(v=vs.85).aspx

这些工具将使您可以轻松地查看页面背后的代码,并且所有内容都是高度交互式的,所以这些东西非常易于使用。

祝你好运!!