2014-09-19 69 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