用VBA点击IE中的按钮(excel 2016)

时间:2017-08-01 18:20:54

标签: html vba

我想单击“保存”按钮但无法正确引用它以便VBA在网页上找到它。我在图像中附加了HTML代码,我将几个部分涂黑了。我已经在线搜索并尝试了多个标注来访问此按钮,但VBA仍然无法找到它。使用DOM资源管理器将按钮显示为图像中蓝色突出显示的行。

我可以SendKeys(" TAB")直到我到达按钮然后发送一般点击操作或者我是否必须按名称引用该元素才能点击它?如何引用此“保存”按钮?我感谢您的帮助。

HTML Code image

HTML

<html> 
<head>...</head>
<frameset rows="100%,*" cols="*" frameBorder="no" frameSpacing="0" › <frame srcar frameBorder="NO" marginWidth="0" marginHeight="0" scrolling="auto">
    <frame src="" frameBorder="NO" marginWidth="0" marginHeight="0" scrolling="auto">
    <html> 
    <head>...</head>

    <body aLink="white" onload="readValues(0)" onresize="null">
        <form name="frmRptRetrieval" action="" encType="" mehotd="post">
        <table width="100%" height="5%" bgColor="•191667" border="0" cellSpacing="0" cellPadding="0">...</table>
        <table width="100%" align="center" border="0">...</table>
        <img width="20" height="20" alt="notification.gif" src="../images/notification.gif"></img>
        <font color="green">Report Retrieval Query saved successfully.</font>
        <table width="780" align="center" border="0">
            <tbody>
               <tr>
                 <td align="left" rowSpan="1" colSpan="1">
                    <table width="100%" align="center" border="0">
                      <tbody>  
                        <tr vAlign="top">...</tr>
                        <tr>
                            <td align="center" rowSpan="1" colSpan="1" › <a href="javascript:doSubmit();" shape="">
                             <img height="18" src="../images/btn_Save.gif" border="0"></img>
                                </a>
                                <a href="javascript:clearAll();" shape="">...</a>

1 个答案:

答案 0 :(得分:0)

试试这个:

Dim objIE As SHDocVw.InternetExplorer
Set objIE = CreateObject("InternetExplorer.Application")
     objIE.navigate "YOUR_URL"
objIE.navigate objIE.document.frames(0).document.getelementsbyname("frmRptRetrieval")(0).document.getelementsbytagname("a")(XXXX).href

现在:您的工作是在标记名为“a”的元素列表中找到按钮的位置,并将XXXX替换为此位置-1(因为索引)。