2014-09-19 137 views
0

我認爲這是一個先決問題,我對VBA相當不錯,但我似乎無法找到解決方案。使用VBA從IE中提取網址

我想使用VBA從IE中提取URL並將其分配給一個變量。這只是我的問題的第一部分...這個想法是打開IE瀏覽器登錄到網站,然後使用Excel填寫本網站上的表格。

所以我的邏輯是把這個變量作爲IE對象並訪問對象後面的HTML並使用IE對象的屬性填充表單。但我真的不知道該如何開始。

任何幫助或建議,將不勝感激。 THanks

+0

你真的需要網站的網址嗎?或者你知道網址,只是試圖通過VBA控制IE? – Gareth 2014-09-19 08:01:38

+0

我剛剛想通過VBA如何使IE之間的鏈接,但現在我想根據我的電子表格 – Charl 2014-09-19 09:16:14

+0

@Gareth填充一些IE對象的輸入字段這基本上就是我所擁有的: Dim ShellObj As對象 昏暗IEObj作爲對象 昏暗的ActiveWindow作爲對象 昏暗OpenPlease作爲整數 OpenPlease = 0 集ShellObj =的CreateObject( 「Shell.Application」) 對於每個IEObj在ShellObj.Windows 如果Application.WorksheetFunction.Find(IEObj .locationName,「Window To Work With」,1)> 0 Then Set ActiveWindow = IEObj Exit For 結束如果 Next – Charl 2014-09-19 09:20:21

回答

0

您可以使用getElementById屬性填充值並單擊Internet Explorer中的按鈕。像下面的代碼應該讓你開始:

Sub OpenIE() 

Dim IE As Object 

Set IE = CreateObject("InternetExplorer.Application") 
IE.Visible = True 
IE.Navigate "http://www.someaddress.com/login" 

While IE.busy 
    DoEvents 
Wend 

IE.Document.getElementById("username").Value = "User" 
IE.Document.getElementById("password").Value = "Password" 
IE.Document.getElementById("RadioButton").Item(0).Checked = True 
IE.Document.getElementById("submit").Click 

End Sub 
+0

Awsome!謝謝! :) – Charl 2014-09-19 10:02:44

+0

你也許知道如何在IE中設置Yes/No字段的屬性? – Charl 2014-09-19 10:03:46

+0

沒有probs,我已經更新了包含單選按鈕的答案。 – Gareth 2014-09-19 10:31:21