从嵌入式Internet Explorer获取返回值

时间:2010-01-20 17:18:13

标签: internet-explorer ms-access vba

我知道如何在VBA应用程序中打开Internet Explorer。但是如何从运行的资源管理器中获取“返回”值到VBA应用程序。我们假设我尝试访问 http://page_not_there 并得到了错误400

如何在我的VBA应用程序中获取此值并采取相应措施。任何提示或链接或编程示例都将非常受欢迎

可以进行精细编辑。所以顺序是: 信息被发送,我得到一个HTML字符串,可以在IE中使用它来签署文档。当然,为了那个人必须在IE中点击一下,但最后我得到一种“反馈”,如果签名成功,我需要这个“反馈”来知道我是否可以继续。

我关上了我的窗户盒,所以请小心翼翼。我像这样启动IE

set ie = CreateObject("InternetExplorer.Application")
ie.navigate2 "to_where_I_want"

就是这样。

然后我得到一个运行Java applet的页面,用于签署选择的URL 上面(“to_where_I_want”)我在那里有几个按钮,在点击签名后我必须输入我的PIN然后我对IE浏览器的输出感兴趣。

据我了解你的帖子我最好用Web控件创建一个表单并用它来浏览和签名

此致 弗里德里希

1 个答案:

答案 0 :(得分:1)

以下是获取页面状态的一种方法的注意事项。

   Dim http As Object
   Dim xmlhttp As Object

       Set http = CreateObject("MSXML2.ServerXMLHTTP.4.0")
       Set xmlhttp = CreateObject("MSXML2.ServerXMLHTTP")

       On Error Resume Next

       xmlhttp.Open "GET", url, False
       ''This alternative can return status 405 in some cases
       ''xmlhttp.Open "HEAD", url, False
       xmlhttp.Send ""

       ''You can get the status of the page
       Status = xmlhttp.Status

       If Err.Number <> 0 Or Status <> 200 Then
           IsLink = False
       Else
           IsLink = True
       End If

       Set xmlhttp = Nothing

编辑:一些注释重新评论

假设有一个名为WBForm的表单,其控件叫做WB,它是一个Microsoft Web Browser控件:

 ''Navigate to a non-existent page 
 Forms!WBForm!WB.Navigate "http://lessthandot.com/somepage.htm"
 ''Title of the page
 MsgBox Forms!WBForm!WB.Document.Title

在上面的案例中,标题将包含“HTTP 404 Not Found”。也可以使用各种元素读取文档。

The document object model Scripting with Elements and Collections