Automating Internet Explorer

My application needs to get the URL of the page currently displayed in IE and respond accordingly. Here's part of the code I'm using:
...
On Error GoTo StartExplorer
Set ie = GetObject(, "InternetExplorer.Application")
Exit Function
StartExplorer:
If Err.Number = 429 Then _
Set ie = CreateObject("InternetExplorer.Application")
...

According to the documentation, the GetObject function is supposed to start a new instance of IE only if IE is not already running. My problem is that it always opens a new instance of IE.

Am I using GetObject correctly? Or is there any other way to get the current URL (and go to a new URL) in the currently active IE window? I do not want to embed the browser within my app. (I am using DDE with Netscape, and it works fine.)

I've fount that Internet Explorer's response to DDE is a bit unpredictable (not a surprise, I guess, given its problems in other areas). If more than one IE window is open, only the first-opened IE window will respond to DDE; but if you close that first window, the other IE windows will respond as they should.