Warning: file_get_contents(/data/phpspider/zhask/data//catemap/5/excel/23.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Excel 在Visual Basic for Applications中处理缺少internet连接的问题_Excel_Internet Explorer_Vba_Xmlhttprequest - Fatal编程技术网

Excel 在Visual Basic for Applications中处理缺少internet连接的问题

Excel 在Visual Basic for Applications中处理缺少internet连接的问题,excel,internet-explorer,vba,xmlhttprequest,Excel,Internet Explorer,Vba,Xmlhttprequest,我正在创建一个简单的代码,它进入一个网站,点击一个登录按钮,输入登录详细信息等,并下载数据。我知道这不是推荐的方法,但是使用Microsoft.XMLHTTPwhere IGETURL没有帮助,因为我登录后最终到达的页面的URL生成了唯一的身份验证令牌。例如,昨天是URL=www.abcd.com/abcd-EFGH-IJKL,今天是URL=www.abcd.com/MNOP-QRST-UVWX,所以我没有设置URL。 因此,使用InternetExplorer.Application方法,我试

我正在创建一个简单的代码,它进入一个网站,点击一个登录按钮,输入登录详细信息等,并下载数据。我知道这不是推荐的方法,但是使用
Microsoft.XMLHTTP
where I
GET
URL没有帮助,因为我登录后最终到达的页面的URL生成了唯一的身份验证令牌。例如,昨天是
URL=www.abcd.com/abcd-EFGH-IJKL
,今天是
URL=www.abcd.com/MNOP-QRST-UVWX
,所以我没有设置URL。 因此,使用
InternetExplorer.Application
方法,我试图处理与internet的断开连接。断开与internet的连接不会产生错误,而只是一个空白页,因此我无法在错误转到LineX时使用
。如何处理代码中的断开连接,例如:

Dim IE as Object
Set IE = CreateObject (InternetExplorer.Application")
IE.navigate "www.abcd.com"
If 'some sort of status response' = 'some value' Then Msgbox 'You are disconnected from the internet'
Else
End If
是否有一个状态响应代码(与Microsoft.XMPHTTP
一样),我可以用它通知msgbox用户“请连接到internet等”


谢谢。

我不熟悉获取实际HTTP响应的方法,但是您可以检查页面上的某种元素(或者如果有元素的话),如下所示:

elements = IE.document.getElementsByTagName("input") 'Or whatever element will be on that page
If elements.Length = 0 Then 
    MsgBox "Please connect to the Internet."
End If

这在我尝试的时候效果很好: