O Office Scripts é a automação em nuvem do Excel, escrita em TypeScript, que roda no Excel para a web (e também no desktop, com conta Microsoft 365) e se integra nativamente ao Power Automate; o VBA é a automação clássica, escrita em Visual Basic, roda só no Excel desktop e continua sendo a única opção para customizar a faixa de opções, criar formulários (UserForms) e reagir a eventos da planilha em tempo real.
Você já ficou em dúvida sobre qual tecnologia de automação vale a pena aprender primeiro no Excel, especialmente ouvindo dizer que a Microsoft estaria “abandonando” o VBA em favor de algo mais moderno?
Sem entender as diferenças reais entre as duas ferramentas, é fácil investir tempo aprendendo a linguagem errada para o seu caso — ou descartar o VBA achando que ele está obsoleto, quando na verdade ele continua sendo indispensável para boa parte das automações mais avançadas de planilha.
Neste artigo iremos mostrar o que é o Office Scripts, como ele se compara ponto a ponto com o VBA, e em que cenário cada um faz mais sentido.
O que é o Office Scripts
Office Scripts é o recurso de automação baseado em nuvem do Excel, lançado inicialmente para o Excel na web e hoje disponível também no Excel desktop para assinantes do Microsoft 365. Os scripts são escritos em TypeScript (uma variação do JavaScript), usando uma API própria chamada ExcelScript, e ficam guardados no OneDrive ou SharePoint junto com a pasta de trabalho, em vez de dentro do próprio arquivo. Assim como o VBA, o Office Scripts também tem um gravador de ações, acessível na guia Automatizar, que registra os passos feitos na planilha e gera o código TypeScript automaticamente.
O que é o VBA, rapidamente
VBA (Visual Basic for Applications) é a linguagem de automação clássica do Office, presente no Excel desde a década de 1990. O código VBA fica guardado dentro do próprio arquivo (em pastas de trabalho habilitadas para macro, como .xlsm), roda apenas no Excel desktop (Windows, com suporte parcial no Mac) e dá acesso a praticamente todo o modelo de objetos do Excel, incluindo eventos, formulários próprios e customização da interface.
Comparação ponto a ponto
| Característica | Office Scripts | VBA |
|---|---|---|
| Linguagem | TypeScript | Visual Basic for Applications |
| Onde roda | Excel na web e Excel desktop (Microsoft 365) | Excel desktop (Windows, parcial no Mac) |
| Onde o código fica salvo | OneDrive/SharePoint, separado do arquivo | Dentro do próprio arquivo .xlsm |
| Integração com Power Automate | Nativa | Não possui conector nativo |
| Eventos de planilha (mudança de célula, abertura do arquivo) | Não suporta | Suporta (Worksheet_Change, Workbook_Open, etc.) |
| Customizar a faixa de opções e criar formulários | Não | Sim |
| Acesso a outros programas do Office (Word, Outlook) | Limitado | Amplo, via automação COM |
Quando usar Office Scripts
O Office Scripts é a escolha natural quando a automação precisa rodar de forma agendada ou disparada por um gatilho externo, sem depender de alguém abrir o Excel manualmente — por exemplo, atualizar uma planilha toda segunda-feira de manhã, ou disparar o script assim que um arquivo novo chega numa pasta do SharePoint. Como o Power Automate consegue chamar um script diretamente, essas automações rodam na nuvem, mesmo com o computador desligado. Também é uma boa escolha para equipes que colaboram entre diferentes sistemas operacionais, já que roda igual no Windows, Mac e no navegador.
Quando usar VBA
O VBA continua sendo a opção certa sempre que a automação depende de eventos (como recalcular algo automaticamente quando uma célula específica muda), de uma interface personalizada (UserForms, botões na faixa de opções) ou de integração com outros programas do Office via automação COM, como gerar um documento no Word ou enviar um e-mail pelo Outlook direto da macro. Também é a escolha mais prática quando o arquivo circula entre várias pessoas que ainda usam versões mais antigas do Excel desktop, sem depender de assinatura do Microsoft 365.
Dá para migrar um código de VBA para Office Scripts?
Não existe conversão automática entre as duas linguagens — migrar uma macro exige reescrever a lógica em TypeScript, usando os objetos equivalentes da API ExcelScript. A própria Microsoft mantém uma documentação chamada “Differences between Office Scripts and VBA macros”, justamente porque os dois modelos de objeto não são idênticos: alguns recursos do VBA (como eventos e UserForms) simplesmente não têm equivalente no Office Scripts.
Qual é o futuro da automação no Excel?
A Microsoft continua investindo nos dois caminhos, cada um para um público diferente: o Office Scripts cresce como parte da estratégia de automação em nuvem, ao lado do Power Automate e do Power Platform, enquanto o VBA permanece como a ferramenta madura para automação profunda dentro do Excel desktop. Não há sinal de descontinuação do VBA — ele continua recebendo suporte e sendo a única forma de acessar certos recursos avançados, o que faz das duas tecnologias opções complementares, não concorrentes diretas.
Disponibilidade
Office Scripts está disponível no Excel para a web e no Excel desktop para assinantes do Microsoft 365 (Windows e Mac). O VBA está disponível no Excel desktop para Windows (todas as versões) e no Excel para Mac, mas não existe em nenhuma versão do Excel Online nem no Google Sheets, que usa o Apps Script como equivalente de automação.
Perguntas frequentes
Office Scripts substitui o VBA totalmente?
Não. Cada um tem seu ponto forte: o Office Scripts se destaca em automação na nuvem integrada ao Power Automate, enquanto o VBA continua sendo indispensável para eventos de planilha, formulários personalizados e customização da faixa de opções, recursos que o Office Scripts não oferece.
Preciso saber programar para usar Office Scripts?
Não necessariamente no início — existe um gravador de ações parecido com o gravador de macros do VBA, na guia Automatizar. Mas para editar ou criar scripts mais elaborados, é preciso ter alguma noção de TypeScript ou JavaScript.
Office Scripts funciona no Excel desktop, não só na web?
Sim, atualmente o Office Scripts roda tanto no Excel para a web quanto no Excel desktop para assinantes do Microsoft 365 — historicamente ele era limitado à versão web, mas esse suporte foi expandido.
Veja também: Power Automate com Excel: Como Automatizar Tarefas Sem Saber VBA e VBA para Iniciantes.
Compartilhe ou Comente
Se você curtiu esse artigo aonde mostramos as diferenças entre Office Scripts e VBA no Excel — linguagem, onde cada um roda, integração com Power Automate e em que cenário faz mais sentido usar cada tecnologia, compartilhe com as suas redes sociais e não se esqueça de deixar um comentário aqui embaixo caso você tenha ficado com alguma dúvida.
Você já usou Office Scripts no seu trabalho, ou ainda está só no VBA? Sua empresa depende de automações que precisam rodar sem ninguém abrir o Excel manualmente? Conta para nós nos comentários!