Não basta ser bom, tem que ser o melhor.

O Visual Basic for Applications (VBA) é uma implementação do Visual Basic da Microsoft incorporada em todos os programas do Microsoft Office, bem como em outras aplicações da Microsoft, como o Visio, e que foi também incorporada pelo menos parcialmente em outros programas de terceiros como o AutoCAD, Mathcad e WordPerfect. Ele substitui e estende as capacidades de anteriormente existentes linguagens de programação de macros específicas para as aplicações e pode ser usado para controlar a quase totalidade dos aspectos da aplicação anfitriã, incluindo a manipulação de aspectos do interface do usuário tais como menus e barra das ferramentas e o trabalho com formulários desenhados pelo usuário ou com caixas de diálogo.

Funcionalidade

Como o nome sugere, o VBA é muito parecido com o Visual Basic, mas só pode rodar código de dentro da aplicação, em vez de executar como aplicação separada. Pode no entanto ser usado para controlar uma aplicação a partir de outra (por exemplo para criar um relatório no Microsoft Word a partir de dados no Excel.

O VBA é rico em funcionalidade e extremamente flexível, mas tem importantes limitações, incluindo o suporte limitado de funções callback.