2017-04-15 87 views
2

我想单击css中的按钮但没有成功,代码在运行时不会给出任何错误,但它也不会单击。vba点击没有href链接的css按钮

的按钮,我想点击这里:

<form id="transactionHistoryReportForm" class="report-form"> 

    <div style="clear:both;" class="days-back-buttons"> 
    <a href="#" class="io-button editColumns">Edit Columns</a> 
    <a class="io-button daysBackButton" data-days="1" href="#"><span>Last Day</span></a> 
    <a class="io-button daysBackButton" data-days="7" href="#"><span>Last 7 Days</span></a> 
    <a class="io-button daysBackButton active-days" data-days="30" href="#"><span>Last 30 Days</span></a> 
    <a class="io-button daysBackButton" data-days="180" href="#"><span>Last 180 Days</span></a> 
    </div> 
    <!-- 
    <div class="currently-showing"> 
     <span>Currently showing:</span> 
     <span data-id="currently-showing-value"></span> 
    </div> 
--> 
    <input type="hidden" class="daysBack" name="daysBack" value="30"> 
    <input type="hidden" class="account" name="account" value="username"> 
    <input type="hidden" class="deviceId" name="deviceId" value=""> 
</form> 

最近30天是默认选择。最近180天是要点击的按钮。我试图运行下面的代码没有成功:

Set oElementCollection = IE.document.getElementsByClassName("report-form") 
For Each link In oElementCollection 
If link.innerHTML = "Last 180 Days" Then 
link.Click 
Exit For 
End If 
Next link 

但是,对于在同一网站上的另一个链接,这是完美的工作。

回答

0

的解决方案是通过类名和指向所述第三项目(初为0,因此4-1)这个简单

Set backbutton = IE.document.getElementsByClassName("io-button daysBackButton").Item(Index:=3) 
    backbutton.Click 

获取元件