[英]Internet Explorer Automation Internal website
我公司有一个内部网站,我们在这里可以获取很多信息。 我相信该站点使用活动目录进行身份验证。 我想使用vba / excel来自动执行浏览器并获取数据。 以下代码仅适用于Google等其他网站,但不适用于我们的网站。 该代码将加载我们的网站,但此后将出错。
Sub GetData()
Dim WP As Object
Dim DC As Object
Dim OB As Object
Set WP = CreateObject("InternetExplorer.application")
WP.Visible = True
WP.Navigate "http://OurSite/Shared/QueryFarm.aspx?queryid=1"
Do While WP.Busy = True
Loop
Set DC = WP.Document 'ERROR HERE
Set OB = DC.getElementsByName("__CS__")
OB(0).Value = "Search"
WP.Quit
End Sub
我在set dc = wp.document
收到“自动化/未指定的错误”。 我已经尝试过了
Set OB = wp.document.getElementsByName("__CS__")
我还尝试将对象类型更改为InternetExplorer
, HTMLInputElement
和HTMLDocument
。
我过去曾经这样做,但是已经很长时间了,我没有保存代码。 现在我在挣扎。
活动目录使这不可能吗? 我是否缺少设置/参数?
像这样:
Sub GetData()
Dim WP As Object
Dim DC As Object
Dim OB As Object
Set WP = CreateObject("InternetExplorer.application")
WP.Visible = True
WP.Navigate "http://OurSite/Shared/QueryFarm.aspx?queryid=1"
WaitForLoad WP
Set DC = WP.Document
Set OB = DC.getElementsByName("__CS__")
OB(0).Value = "Search"
'WP.Quit
End Sub
Sub WaitForLoad(IE as object)
Do While IE.Busy = True or IE.ReadyState <> 4
DoEvents
Loop
End Sub
我实际上发现这是安全的事情。 在对互联网设置/安全性进行一些更改之后,它似乎可以正常工作。 但是,我不确定到底发生了什么,因为我将所有设置放回原处就可以了。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.