Como interagir com sites usando VBA e Internet Explorer - janelas de pop-up
Uma situação que pode ocorrer com aqueles que usam VBA + Internet é você ter que lidar com janelas pop-ups. Seu código VBA clica em um link e ao invés de carregar a página na mesma janela, abre-se uma nova janela (pop-up).

Este post foi originalmente publicado em http://officevbavsto.blogspot.com/2011/05/vba-internet-pegando-instancia-de.html
Uma situação que pode ocorrer com aqueles que usam VBA + Internet é você ter que lidar com janelas pop-ups. Seu código VBA clica em um link e ao invés de carregar a página na mesma janela, abre-se uma nova janela (pop-up).
Vejam o seguinte código:
Function AbrirPagina()
Dim ie As New InternetExplorer
ie.Navigate "http://www.w3schools.com/"
ie.Visible = True
While ie.Busy
Wend
ie.Document.All.Item("as_q").innerText = "Qualquer coisa"
ie.Document.All.Item("searchform").Submit
End Function
Acontecerá o seguinte:

Como trabalhar com o pop-up do Google que foi aberto?
Para resolver este problema vamos utilizar a classe ShellWindows
.
A classe ShellWindows
representa a coleção de todas janelas abertas. Esta coleção contém referencias às janelas do Internet Explorer.
Antes, você precisa adicionar referência ao Microsoft Internet Controls.

Vamos ao código da solução:
Function AbrirPagina()
Dim ie As New InternetExplorer
ie.Navigate "http://www.w3schools.com/"
ie.Visible = True
While Not ie.ReadyState = READYSTATE_COMPLETE
Wend
ie.Document.all.Item("as_q").innerText = "Qualquer coisa"
ie.Document.all.Item("searchform").Submit
Application.Wait Now + TimeValue("00:00:05")
Dim objShellWindows As New SHDocVw.ShellWindows
i_URL = "http://www.google.com/search?sitesearch=www.w3schools.com&as_q=Qualquer+coisa"
On Error Resume Next
For Each ie In objShellWindows
If TypeName(ie.Document) = "HTMLDocument" Then
If ie.Document.URL = i_URL Then
ie.Document.all.Item("q").innerText = "Teste"
End If
End If
Next
End Function
i_URL
tem que ser o endereço que aparece na Barra de Endereço da Janela Pop-up. Claro que noif
você pode usar outra condição de comparação além da que usei neste exemplo.
Fonte: http://support.microsoft.com/kb/176792