Como eu tinha ficado devendo uma resposta neste tópico, venho aqui dar uma dica importante.
Em aplicações onde precisemos integrar VBA+HTML+JS, muitas vezes receberemos do navegador, uma mensagem que será exibida através de uma POPUP JavaScript. Nestes casos, nossa rotina parece "congelar", ou esperar um clique no botão para prosseguir com o fluxo.
O que acontece é que sempre que esta "janela" aparece, o conteúdo da página fica em carregamento, ou seja, na condição de READYSTATE <> 4, até que o usuário clique no botão ou pressione ENTER. Agora que sabemos o que "segura" o código, na rotina que testa essa condição, basta adicionar um sendkeys{"ENTER"}
Código: Selecionar todos
While IE.ReadyState <> 4
DoEvents
Sendkeys{"ENTER"}
Wend
Um abraço!