Como Salvar Macro Apenas em um Documento Específico
🔍 WiseChecker

Como Salvar Macro Apenas em um Documento Específico

Você escreveu uma macro VBA no Word que automatiza uma tarefa repetitiva, mas precisa que ela seja executada apenas quando um documento específico estiver aberto. Por padrão, o Word armazena macros no modelo Normal.dotm, tornando-as disponíveis para todos os documentos. Este artigo explica como salvar uma macro diretamente em um único documento para que ela não afete outros arquivos.

A solução é armazenar a macro no próprio documento, em vez de em um modelo global. O Word oferece dois locais de armazenamento para macros: o corpo do documento e o modelo global. Quando você salva uma macro dentro de um documento, essa macro viaja com o arquivo e é executada apenas quando esse documento está ativo. Essa abordagem é ideal para automações específicas de fluxo de trabalho que não devem poluir o ambiente global.

Este artigo aborda as etapas exatas para criar uma macro em um documento, como verificar se ela foi armazenada corretamente e o que fazer se a macro não aparecer ao reabrir o arquivo. Você também aprenderá as diferenças entre macros de nível de documento e globais para escolher a abordagem certa para cada projeto.

Principais Conclusões: Salvar uma Macro em um Único Documento do Word

  • Guia Desenvolvedor > Código > Macros > Nome da macro > Armazenar macro em > Nome do documento: A única maneira correta de atribuir uma macro a um documento específico em vez do modelo global Normal.dotm.
  • Arquivo > Salvar como > Documento Habilitado para Macro do Word (docm): O formato de arquivo obrigatório para qualquer documento que contenha macros. Um arquivo .docx comum descartará o código da macro ao ser salvo.
  • Arquivo > Opções > Central de Confiabilidade > Configurações da Central de Confiabilidade > Configurações de Macro > Habilitar todas as macros: Configuração de segurança necessária para permitir a execução de macros no documento. Sem isso, a macro não será executada.

ADVERTISEMENT

Entendendo os Locais de Armazenamento de Macros no Word

O Word armazena macros VBA em um de dois lugares. O local padrão é o modelo global Normal.dotm. Qualquer macro salva lá fica disponível para todos os documentos que você abrir. O segundo local é o próprio documento. Uma macro armazenada em um documento é chamada de macro de nível de documento. Ela está incorporada no arquivo e é executada apenas quando esse documento específico está ativo.

O requisito principal para macros de nível de documento é a extensão do arquivo. Um documento padrão do Word usa a extensão .docx. Esse formato não pode conter código VBA. Você deve salvar o arquivo como um Documento Habilitado para Macro do Word com a extensão .docm. Se você salvar um arquivo .docm como .docx, o Word remove todas as macros silenciosamente. A macro é perdida permanentemente, a menos que você tenha uma cópia de backup.

Outro fator importante é a configuração de segurança da Central de Confiabilidade. Por padrão, o Word desabilita todas as macros com notificação. Você deve alterar essa configuração para permitir a execução de macros. Essa configuração se aplica a todos os documentos, não apenas ao que contém sua macro. Você pode ajustá-la temporariamente e reverter após os testes.

Passos para Salvar uma Macro em um Documento Específico

Siga estas etapas para criar uma nova macro e armazená-la dentro de um único documento. O procedimento pressupõe que você já abriu o documento de destino no Word.

  1. Habilitar a guia Desenvolvedor
    Vá em Arquivo > Opções > Personalizar Faixa de Opções. No painel direito, em Guias Principais, marque a caixa ao lado de Desenvolvedor. Clique em OK. A guia Desenvolvedor agora aparece na faixa de opções.
  2. Abrir o Editor do Visual Basic
    Na guia Desenvolvedor, clique em Visual Basic. Como alternativa, pressione Alt+F11. O editor VBA é aberto.
  3. Inserir um módulo no projeto correto
    No painel do Explorador de Projetos à esquerda, localize o projeto que corresponde ao nome do seu documento. Ele aparece como Projeto (NomeDoSeuDocumento). Clique com o botão direito nesse projeto, selecione Inserir e depois Módulo. Um novo módulo de código aparece sob o projeto.
  4. Escrever ou colar o código da macro
    Na janela do módulo, digite ou cole seu código VBA. Por exemplo:
    Sub MinhaMacroDoDocumento()
    MsgBox "Esta macro é executada apenas neste documento."
    End Sub
  5. Salvar o documento como um arquivo habilitado para macro
    Feche o editor VBA. Vá em Arquivo > Salvar como. No menu suspenso Tipo, selecione Documento Habilitado para Macro do Word (docm). Escolha uma pasta e um nome de arquivo e clique em Salvar.
  6. Habilitar macros na Central de Confiabilidade
    Vá em Arquivo > Opções > Central de Confiabilidade > Configurações da Central de Confiabilidade. Selecione Configurações de Macro. Escolha Habilitar todas as macros. Clique em OK duas vezes.
  7. Testar a macro
    Pressione Alt+F8 para abrir a caixa de diálogo Macros. No menu suspenso Macros em, confirme que o nome do seu documento aparece. Selecione sua macro e clique em Executar. A macro é executada.

ADVERTISEMENT

O Que Fazer se a Macro Não Aparecer Após Reabrir

Se você reabrir o documento mais tarde e a macro estiver ausente ou não for executada, verifique estes três fatores em ordem.

Você salvou como .docm em vez de .docx?

A causa mais comum é salvar o arquivo com a extensão .docx. O Word descarta silenciosamente todo o código VBA ao salvar como .docx. Abra o arquivo, verifique a extensão na barra de título ou no Explorador de Arquivos. Se terminar em .docx, a macro se foi. Você deve recriá-la e salvar como .docm.

A macro está armazenada no projeto correto?

Abra o editor VBA com Alt+F11. No Explorador de Projetos, procure um projeto com o nome do seu documento. Se a macro estiver dentro de Projeto (Normal) em vez disso, é uma macro global, não de nível de documento. Clique com o botão direito no módulo em Normal, escolha Remover, reinsira o módulo sob o projeto do documento correto e repita as etapas de salvamento.

As macros estão habilitadas na Central de Confiabilidade?

O Word desabilita macros por padrão ao abrir um arquivo de um local não confiável. Vá em Arquivo > Opções > Central de Confiabilidade > Configurações da Central de Confiabilidade > Configurações de Macro. Se a configuração for Desabilitar todas as macros sem notificação, altere para Habilitar todas as macros. Além disso, adicione a pasta que contém seu arquivo .docm à lista de Locais Confiáveis para evitar o aviso de segurança toda vez.

Macro de Documento do Word vs Macro Global: Principais Diferenças

Item Macro de Nível de Documento Macro Global (Normal.dotm)
Local de armazenamento Incorporado no arquivo .docm Modelo Normal.dotm na pasta de modelos do usuário
Escopo Apenas o documento hospedeiro Todos os documentos abertos no Word
Extensão de arquivo necessária .docm Nenhuma (Normal.dotm é sempre carregado)
Portabilidade Viaja com o arquivo do documento Fica apenas na máquina local
Risco de backup Perdida se salva como .docx Perdida se Normal.dotm for corrompido ou excluído
Melhor caso de uso Automação de projeto único Utilitários reutilizáveis em todo o trabalho

Agora você pode salvar uma macro em um documento específico e manter seu modelo global limpo. Use a guia Desenvolvedor para inserir um módulo no projeto correto, escreva seu código e salve o arquivo como .docm. Sempre verifique a extensão do arquivo após salvar. Para segurança, habilite macros na Central de Confiabilidade ou adicione a pasta do documento aos Locais Confiáveis. Como dica avançada, você também pode exportar um módulo do editor VBA como um arquivo .bas e importá-lo para qualquer projeto de documento sem redigitar o código.

ADVERTISEMENT