Para lidar com segurança de macros no Excel, controle o nível de bloqueio em Arquivo > Opções > Central de Confiabilidade > Configurações da Central de Confiabilidade > Configurações de Macro, cadastre pastas confiáveis em Locais Confiáveis para não repetir o aviso de segurança em arquivos internos, e assine digitalmente o projeto VBA (no editor VBA, em Ferramentas > Assinatura Digital) quando quiser garantir que o código não foi alterado depois de pronto.
Você já abriu uma planilha com macro e viu aquele aviso amarelo — “AVISO DE SEGURANÇA Macros foram desabilitadas” — e ficou em dúvida se devia clicar em Habilitar Conteúdo, sem saber muito bem o que isso realmente libera no seu computador?
Esse aviso existe por um motivo real: macros são código executável, e um arquivo malicioso pode usar VBA para instalar programas indesejados ou apagar dados, então o Excel bloqueia a execução por padrão. O problema é que, sem entender as opções de segurança disponíveis, muita gente acaba clicando em Habilitar Conteúdo por hábito em qualquer arquivo, mesmo os de origem duvidosa, ou vai para o outro extremo e desativa toda a proteção só para não ver o aviso de novo.
Neste artigo iremos mostrar como configurar os níveis de segurança de macros do Excel de forma equilibrada, como cadastrar locais confiáveis para arquivos internos, e como assinar digitalmente um projeto VBA para dar mais confiança a quem for abrir o arquivo.
Por que o Excel bloqueia macros por padrão
Uma macro VBA é código de programação que roda com os mesmos privilégios do usuário que abriu o arquivo — ela pode ler e escrever arquivos no computador, acessar a rede e, em casos maliciosos, baixar e executar outros programas. Por isso, desde as versões mais antigas do Office, o Excel trata arquivos com macro (extensão .xlsm) de forma diferente de arquivos comuns (.xlsx), exibindo o aviso de segurança e bloqueando a execução até que o usuário confirme explicitamente que confia naquele arquivo.
Configurações de Macro na Central de Confiabilidade
O nível de bloqueio geral fica em Arquivo > Opções > Central de Confiabilidade, clicando no botão Configurações da Central de Confiabilidade e depois na seção Configurações de Macro. Lá existem quatro opções:
- Desabilitar todas as macros sem notificação: bloqueia tudo, sem sequer avisar — indicado só para quem nunca usa macros e quer o bloqueio mais restritivo possível.
- Desabilitar todas as macros com notificação: é a opção padrão do Excel, mostra o aviso amarelo e deixa você decidir, arquivo por arquivo, clicando em Habilitar Conteúdo.
- Desabilitar todas as macros, exceto as assinadas digitalmente: bloqueia macros normais, mas permite automaticamente as que têm uma assinatura digital de um certificado que você já marcou como confiável.
- Habilitar todas as macros (não recomendado): remove toda a proteção, executando qualquer macro sem perguntar nada — a Microsoft desaconselha essa opção justamente por deixar o computador exposto a qualquer arquivo malicioso.
Para a maioria dos usuários, manter a opção padrão (com notificação) é o equilíbrio mais seguro: você continua no controle de decidir arquivo por arquivo, sem abrir mão da proteção nem precisar clicar em Habilitar Conteúdo sem entender o que está fazendo.
Locais Confiáveis: liberando pastas internas sem repetir o aviso
Se você trabalha com arquivos de macro guardados sempre na mesma pasta interna da empresa (por exemplo, uma pasta de rede compartilhada só entre a equipe), cadastrar essa pasta como Local Confiável evita que o aviso de segurança apareça toda vez que alguém abre um desses arquivos, sem precisar afrouxar a segurança para arquivos de fora dessa pasta.
Para cadastrar, vá em Arquivo > Opções > Central de Confiabilidade > Configurações da Central de Confiabilidade > Locais Confiáveis, clique em Adicionar Novo Local, e selecione a pasta desejada. Marque a opção Também confiar em subpastas deste local se a pasta tiver subpastas com outros arquivos de macro que também devem ser liberados automaticamente.
Essa é a alternativa mais recomendada para times que usam macros internamente de forma recorrente: em vez de todo mundo clicar em Habilitar Conteúdo dezenas de vezes por semana (o que, com o tempo, faz as pessoas clicarem sem pensar, mesmo em arquivos de fora da pasta), a pasta interna fica liberada, e qualquer arquivo de macro vindo de fora dela continua exigindo confirmação manual.
Assinando digitalmente um projeto VBA
Uma assinatura digital no código VBA serve para garantir que o macro não foi alterado depois de assinado, e identifica quem criou o código. Para uso pessoal ou dentro de uma equipe pequena, o Office inclui uma ferramenta chamada Certificado Digital para Projetos VBA (o executável SELFCERT.EXE, dentro da pasta de instalação do Office), que cria um certificado autoassinado — não emitido por uma autoridade certificadora externa, mas suficiente para assinar código de uso interno.
Depois de gerar o certificado com um nome que identifique você ou a equipe, o processo de assinar o projeto VBA é feito dentro do próprio editor: abra o editor VBA (Alt+F11), selecione o projeto da pasta de trabalho no Explorador de Projetos, vá em Ferramentas > Assinatura Digital, clique em Escolher e selecione o certificado criado. Salve o arquivo em seguida para que a assinatura seja gravada junto com o código.
Um ponto importante: um certificado autoassinado só é reconhecido automaticamente como confiável no computador onde ele foi criado (ou em outros computadores onde ele tenha sido manualmente adicionado à lista de Editores Confiáveis). Se você distribuir o arquivo assinado para outra pessoa que nunca instalou esse certificado, o Excel dela ainda vai mostrar o aviso de segurança, só que agora identificando o nome do certificado como o autor do código. Para distribuir macros amplamente sem esse aviso aparecer, seria necessário um certificado emitido por uma autoridade certificadora comercial reconhecida, o que tem custo e é mais comum em software distribuído comercialmente do que em planilhas internas de uma empresa.
| Situação | Recomendação |
|---|---|
| Macros de uso pessoal, arquivo próprio | Configuração padrão (com notificação) + Habilitar Conteúdo quando confiar no arquivo |
| Macros compartilhadas numa pasta de rede da equipe | Cadastrar a pasta como Local Confiável |
| Macros distribuídas entre poucos colegas, com garantia de integridade | Certificado autoassinado (SELFCERT.EXE) + Editores Confiáveis nos computadores de destino |
| Software com macro distribuído comercialmente | Certificado de uma autoridade certificadora comercial reconhecida |
Disponibilidade
As Configurações de Macro e os Locais Confiáveis da Central de Confiabilidade estão disponíveis no Excel para Windows a partir da versão 2007, incluindo 2010, 2013, 2016, 2019, 2021 e Excel 365. A ferramenta SELFCERT.EXE também é exclusiva do Windows. No Excel para Mac, a segurança de macros é gerenciada de forma mais simplificada, sem a mesma granularidade de Locais Confiáveis. O Excel Online não executa macros VBA, então essas configurações não se aplicam à versão web. O Google Sheets usa um modelo de permissões diferente para Apps Script, baseado em autorização explícita de escopos (como acesso a arquivos ou à internet) na primeira execução do script, em vez de assinatura digital de certificado.
Perguntas frequentes
É seguro clicar em “Habilitar Conteúdo” sempre que o Excel mostrar o aviso de macro?
Não deveria ser um hábito automático. Habilitar Conteúdo executa o código VBA do arquivo com os privilégios do seu usuário. Só clique se você confia na origem do arquivo — de um colega conhecido ou de uma fonte que você reconhece. Para arquivos recebidos por e-mail de remetente desconhecido, o mais seguro é não habilitar e verificar a origem antes.
Qual a diferença entre cadastrar um Local Confiável e assinar digitalmente o código?
Um Local Confiável libera automaticamente qualquer arquivo salvo naquela pasta específica, sem analisar o código dele. A assinatura digital, por outro lado, garante que o código não foi alterado depois de assinado e identifica o autor, mas não libera automaticamente a execução a menos que o certificado usado também esteja na lista de Editores Confiáveis do computador que abre o arquivo.
Um certificado autoassinado (criado com SELFCERT.EXE) protege contra vírus de macro?
Não sozinho. O certificado autoassinado garante que o código não mudou depois de assinado e identifica quem assinou, mas não analisa o conteúdo do código em busca de comportamento malicioso. A segurança real continua dependendo de você confiar em quem assinou o arquivo, exatamente como confiar em quem enviou um arquivo sem assinatura nenhuma.
Veja também: Como Habilitar a Guia Desenvolvedor no Excel (aquele artigo mostra como exibir a aba onde ficam os botões de macro e segurança; este aqui foca especificamente nas configurações de segurança e na assinatura digital de macros).
Compartilhe ou Comente
Se você curtiu esse artigo aonde mostramos como configurar os níveis de segurança de macros na Central de Confiabilidade, cadastrar Locais Confiáveis e assinar digitalmente um projeto VBA para dar mais confiança a quem abre o arquivo, 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ê costuma clicar em Habilitar Conteúdo sem pensar muito, ou já parou pra verificar a origem do arquivo antes? Sua empresa já usa Locais Confiáveis para as macros internas? Conta para nós nos comentários!