2016-08-02 15 views
-4

我想了解如何點擊下面的按鈕,因爲它們都命名相同。正如你所看到的按鈕被命名爲「btn-default」兩次,但我需要點擊包含雲的那個。點擊一個href時,btn命名相同無處不在

以下代碼HTML是我需要用於VB應用程序的內部網站的源代碼。基本上,這段代碼是向你展示它的樣子。

<div class="col-sm-4 col-md-4"> 
    <a href="?login.type=enterprise"> 
     <div class="btn-default"> 
      Enterprise 
     </div> 
    </a> 
</div> 

<div class="col-sm-4 col-md-4"> 
    <a href="?login.type=cloud"> 
     <div class="btn-default"> 
      Cloud 
     </div> 
    </a> 
</div> 

我想通過VBA代碼點擊雲。我有下面這不能做的伎倆。

以下代碼是我需要用於Excel VBA的代碼VBA。

Set links = IE.document.getElementsByTagName("a") 
For Each Hyperlink In links 
    If InStr(Hyperlink.href, "cloud") Then 
    Hyperlink.Click 
    Exit For 
    End If 
Next 

問題是,我不能使用導航選擇,因爲它在這一點,我真的需要點擊通過代碼按鈕(BTN-默認)錯誤。

而下面的解決方案還沒有這樣的伎倆

Dim ele As Object 

For Each ele In IE.Document.getElementsByClassName("btn-default") 
    If InStr(ele.innerText, "Cloud") > 0 Then ele.Click 
Next 
+0

我想你應該在HTML標籤上張貼此,作爲你的問題與HTML有關,並且它沒有任何VBA代碼。 –

回答

0

我不能完全肯定我的理解正確,你正在向我們展示了HTML代碼,但寫要使用VBA。 這裏是一個VBA代碼,如果你想創建一個Excel的按鈕,爲您帶來這個鏈接:「login.type =企業」

Sub Browse() 
Dim ie As Object 
Set ie = CreateObject("Internetexplorer.Application") 
ie.Visible = True 
ie.Navigate "http://example.com/?login.type=enterprise" 
End Sub 

然後你就可以去開發\插入\創建一個按鈕按鈕並右鍵單擊它並將其分配給上面的宏,並選擇「分配宏」。

如果這不是你想要的,請在你的問題中更精確。

+0

抱歉我的問題不準確,我更新了我的問題,因爲您的解決方案不能很好地使用。 – OkImnotsook

+0

@Oklmmotsook我看到你的編輯,但現在你顯示我的JavaScript和要求的VBA解決方案,所以我仍然不明白。 –

+0

我的解決方案是VBA,請參閱下面的「IE.document.getElementsByTagName」 – OkImnotsook

1

這是不是錯了我的代碼只是一個錯誤的位置代碼,下面添加到等待後IE做了工作:

Do While IE.Busy 
    Application.Wait DateAdd("s", 1, Now) 
Loop 

For Each ele In IE.Document.getElementsByTagName("a") 
    If InStr(ele.innerText, "Cloud") > 0 Then 
     ele.click 
     Exit For 
    End If 
Next 
相關問題