Automação OLE para iniciar o MS Word e trazer para a frente

Qual é o método "correto" (recomendado) para conectar-se a uma instância em execução do MS Word e trazer esse aplicativo para a frente? Estou fazendo algo parecido com o seguinte em um aplicativo VBA:

...
objWord = GetObject ("Word.Application")
if (objWord is nothing) then
  objWord = CreateObject("Word.Application")
end if
objWord.Activate()
objWord.Visible = true
objWord.WindowState = 1 'maximized
...

Executando no Windows XP com o Word 2007, isso funciona na maioria das vezes - mas periodicamente, falha ao trazer a janela do Word para a frente (e, em vez disso, pisca o ícone minimizado do Word na barra de tarefas).

NOTA: Resolvi parcialmente esse problema usando a chamada da API FindWindow Win:

hwnd = FindWindow("OpusApp", vbNullString)
If hwnd > 0 Then 
  SetForegroundWindow (hwnd)
end if

Isso não é 100% porque (como drventure apontou), se várias instâncias do Word estiverem sendo executadas, você não pode ter certeza de com o que manipular. Como quando meu código inicia o Word, ele usa GetObject primeiro e depois CreateObject, se isso falhar, desde que haja uma instância do Word em execução para começar, estou bem.

questionAnswers(1)

yourAnswerToTheQuestion