简体   繁体   中英

VBA Internet Explorer - Object variables disappear

I am trying to learn web scraping with VBA and i am running into an issue in the most basic first step.

The problem (I think) is that after IEObject.Navigate is performed, all the variables of IEObject dissapear. So I get the error

"Run-time error '426': The remote server machine does not exist or is unavailable"

on line 8. Any help is appreciated.

Code:

Sub VBAWeb()

Dim IEObject As InternetExplorer
Set IEObject = New InternetExplorer
IEObject.Visible = True
IEObject.Navigate URL:="https://google.com"

Do While IEObject.Busy = True Or IEObject.ReadyState <> READYSTATE_COMPLETE
    Application.Wait Now + TimeValue("00:00:01")
Loop

Debug.Print IEObject.LocationURL

End Sub

I suggest you try to run code below on your side may help to fix the issue.

Sub demo()

    Dim URL As String
    Dim IE As Object

    Set IE = CreateObject("InternetExplorer.Application")

    IE.Visible = True

    URL = "https://www.microsoft.com"

    IE.Navigate URL

    Do While IE.ReadyState = 4: DoEvents: Loop  
    Do Until IE.ReadyState = 4: DoEvents: Loop   

    Debug.Print IE.LocationURL

    Set IE = Nothing

End Sub

You can see that the IE object was created differently. Also, the loop is a little bit different.

The technical post webpages of this site follow the CC BY-SA 4.0 protocol. If you need to reprint, please indicate the site URL or the original address.Any question please contact:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM