• Status: Solved
  • Priority: Medium
  • Security: Public
  • Views: 4195
  • Last Modified:

.Navigate URL in current IE windows or object in VBA

Dear Expert,

I  am going through the long time process to create one IE object or window . and I plan not to quit the IE instance/window until the computer is shut down. The current IE window will be used for other new VBA automation program.
But I don't know how to transfer the object information or property  of the current/existing IE window to the new IE object which created from the new VBA program. I read some help that mention use shellwindow to grab the exsitng IE window  object information and property at http://bytes.com/topic/visual-basic-net/answers/353392-how-access-current-internet-explorer-vb-net,
but it is not clear for me. Any code provide for the problem of  newIE.navigate URL on the existing IE window? please advise


Thanks

Duncan
0
duncanb7
Asked:
duncanb7
  • 9
  • 5
1 Solution
 
SiddharthRoutCommented:
You don't need to use Shell for this. You can use CreateObject in VBA.

And once you are done simply use

Object.Quit

and then

Set Object = Nothing

See the example below.

Dim browser As Object

Private Sub IEObj()
    On Error GoTo ErrIE
    
    Set browser = CreateObject("InternetExplorer.Application")
    
    browser.Visible = True
    
    browser.Navigate ("http://koolsid.com")
    
    '~~> You can now use 'browser' object in your code
    '~~> till the time you destroy it.
    
    'browser.Quit
    'Set browser = Nothing
    
    Exit Sub
ErrIE:
    MsgBox Err.Description
End Sub

Open in new window


Sid
0
 
duncanb7Author Commented:
I mean I navigate URL on the existing or opened IE windows
0
 
duncanb7Author Commented:
I mean I navigate URL on the existing or opened IE windows  not on the new IE window or object
0
Ultimate Tool Kit for Technology Solution Provider

Broken down into practical pointers and step-by-step instructions, the IT Service Excellence Tool Kit delivers expert advice for technology solution providers. Get your free copy now.

 
SiddharthRoutCommented:
And if there is no existing or opened IE?

Sid
0
 
duncanb7Author Commented:
Actually do you understand my question, i could explan more, and I don't know your question means ?(And if there is no existing or opened IE?)
0
 
duncanb7Author Commented:
Opened IE windows means that is not opened on my working program and it might create by
other program using other lanugage  
0
 
duncanb7Author Commented:
In other words, the opened IE windows is created seperately from my program.
Probably, we might use SHDocVw.ShellWindows
 to find the target title window first before navigate URL
0
 
SiddharthRoutCommented:
Ok Correct me if I am wrong. What I understood from your query is that you have opened IE from a different program and now you want to use that IE from VBA?

If not, then yes, if you can explain more then maybe I can give you the exact solution :)

Sid
0
 
duncanb7Author Commented:
For example,

now you open example IE window  by clicking on the IE icon on desktop windows abd browser to www.yahoo.com
and the IE titlte would be Yahoo!--Windower Explorer.
and then now you use new VBA program  for navigate example URL like www.goggle.com  but you could NOT create
new IE object for browsing , you need to navigate the URL on the opened window  with the title  Yahoo!-Window
0
 
SiddharthRoutCommented:
Oh Ok.

Like this?

Sub Sample()
    Dim SW, IE
    
    Set SW = CreateObject("Shell.Application")
    For Each IE In SW.Windows
    If TypeName(IE.Document) = "HTMLDocument" Then
        If IE.LocationURL = "http://in.yahoo.com/?p=us" Then _
        IE.Navigate "www.Google.com"
    End If
    Next
End Sub

Open in new window


Sid
0
 
duncanb7Author Commented:
Yes it is correct  totally , and I found the solution yesterday from this wbesite
http://vba-corner.livejournal.com/4623.html but won't want to delete the
question. ANywaym you deserve the point
0
 
duncanb7Author Commented:
Thanks you reply
0
 
SiddharthRoutCommented:
duncanb7: You are very kind but you should never do that ;)

If you have found an answer by yourself then post that here and then accept your answer and close the question. You don't need to delete it. :) This will also help other people who come searching for similar answers :)

Sid
0
 
duncanb7Author Commented:
Got it , anyway thanks for sharing
0
Question has a verified solution.

Are you are experiencing a similar issue? Get a personalized answer when you ask a related question.

Have a better answer? Share it in a comment.

Join & Write a Comment

Featured Post

Ultimate Tool Kit for Technology Solution Provider

Broken down into practical pointers and step-by-step instructions, the IT Service Excellence Tool Kit delivers expert advice for technology solution providers. Get your free copy now.

  • 9
  • 5
Tackle projects and never again get stuck behind a technical roadblock.
Join Now