2017-04-15 84 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 

獲取元件