Em primeiro lugar, você deveria criar um serviço, e isso não pode ser feito plenamente em linguagem VBA. Se, mesmo assim, você quiser usar o VBA, o primeiro passo para você cumprir seu objetivo é criar uma rotina que execute, por exemplo, de 5 em 5 segundos.
Dessa forma, você poderá obter monitorar os processos que estão sendo executados no computador.
Além disso, você afirmou que as janelas são tratadas como objetos. Você tem certeza disso? Você consegue comunicar com essas janelas no VBA atribuindo-as à uma variável no VBA? Se esse for o caso, ótimo, mas se não for, você terá que usar chamadas APIs para
descobrir o handle dessas janelas e sua monitoração ficará mais difícil de fazer e, possivelmente, mais limitada.
Veja como criar um código que se repete periodicamente: http://www.ambienteoffice.com.br/officevba/executar_macro_periodicamente_ou_num_horario/
Felipe Costa Gualberto - http://www.ambienteoffice.com.br