Ao abrir um documento do Word que contém macros, você pode ver uma mensagem dizendo “Erro de compilação em módulo oculto”. Esse erro impede que o documento carregue corretamente ou interrompe a execução das macros. Ele ocorre porque o Word não consegue compilar o código VBA armazenado em um módulo oculto dentro do documento ou modelo. Este artigo explica o que causa esse erro e fornece métodos passo a passo para corrigi-lo, incluindo como desabilitar ou reparar o código VBA problemático com segurança.
Principais conclusões: Corrigindo o erro de compilação em módulo oculto no Word
- Desenvolvedor > Visual Basic > Ferramentas > Referências: Remova referências de biblioteca quebradas ou ausentes que causam erros de compilação em módulos ocultos.
- Desenvolvedor > Macros > Organizador Normal.dotm > Excluir módulos ocultos: Remova módulos VBA corrompidos do modelo Normal para interromper o erro em todos os documentos.
- Arquivo > Opções > Central de Confiabilidade > Configurações da Central de Confiabilidade > Configurações de Macro > Desabilitar todas as macros com notificação: Bloqueie temporariamente as macros para abrir o documento sem o erro de compilação.
Por que o Word exibe um erro de compilação em um módulo oculto
O erro de compilação em um módulo oculto ocorre quando o Word tenta carregar o código VBA, mas não consegue verificar ou compilá-lo. O módulo oculto é uma parte do documento ou modelo que contém código de macro, mas não fica visível na visualização normal do documento. O Word oculta esses módulos intencionalmente para proteger o código de usuários casuais. No entanto, se o código VBA fizer referência a uma biblioteca ou objeto ausente ou incompatível no seu sistema, o Word falha ao compilar o código e exibe o erro.
Gatilhos comuns incluem mover um documento de uma versão do Office para outra, copiar macros de um sistema 32 bits antigo para um sistema 64 bits ou abrir um documento que usa um complemento COM não instalado no seu computador. A mensagem de erro geralmente inclui uma referência a um nome de módulo específico, como “Module1” ou “ThisDocument”, mas o módulo em si permanece oculto na interface do usuário.
O papel do modelo Normal.dotm
O modelo Normal.dotm é o modelo global padrão do Word. Ele armazena macros e código VBA que se aplicam a todos os documentos. Se o modelo Normal.dotm contiver um módulo oculto com erro de compilação, todos os documentos abertos no Word acionarão o erro. Isso torna o problema sistêmico, em vez de limitado a um único arquivo. Verificar e reparar o modelo Normal costuma ser a maneira mais rápida de resolver o problema.
Passos para corrigir o erro de compilação em módulo oculto
Os métodos a seguir abordam as causas mais comuns do erro de compilação. Comece com o Método 1, pois ele resolve a maioria dos casos. Se o erro persistir, prossiga com os métodos restantes em ordem.
Método 1: Remover referências de biblioteca quebradas
- Abra o Editor do Visual Basic
Pressione Alt+F11 no teclado para abrir o editor VBA. Se o documento abrir com o erro, você ainda pode acessar o editor. - Abra a caixa de diálogo Referências
No editor VBA, clique em Ferramentas na barra de menus e depois em Referências. Isso mostra todas as referências de biblioteca usadas pelo projeto. - Identifique referências ausentes
Procure por qualquer entrada que comece com “MISSING:”. Essas referências apontam para bibliotecas não instaladas no seu sistema. Desmarque a caixa ao lado de cada referência ausente. - Confirme e feche
Clique em OK para fechar a caixa de diálogo Referências. Em seguida, feche o editor VBA. Salve o documento e reabra-o para testar se o erro desapareceu.
Método 2: Excluir o módulo oculto do modelo Normal
- Feche todos os documentos do Word abertos
Certifique-se de que nenhum documento esteja aberto. O modelo Normal é carregado quando o Word inicia sem documentos. - Abra o Organizador
No Word, vá até a guia Desenvolvedor e clique em Modelo de Documento. Se a guia Desenvolvedor não estiver visível, clique com o botão direito na faixa de opções, selecione Personalizar a Faixa de Opções e habilite a guia Desenvolvedor. Em seguida, clique em Organizador. - Mude para a guia Itens de Projeto de Macro
Na caixa de diálogo Organizador, clique na guia Itens de Projeto de Macro. No lado esquerdo, você vê o modelo Normal.dotm. No lado direito, você vê o documento atual. - Remova o módulo oculto do Normal.dotm
No painel esquerdo, selecione o módulo que contém o erro. O nome pode ser Module1, NewMacros ou um nome personalizado. Clique em Excluir. Confirme a exclusão quando solicitado. - Feche o Organizador e teste
Clique em Fechar. Reinicie o Word e abra o documento que anteriormente exibia o erro. O erro de compilação não deve mais aparecer.
Método 3: Desabilitar todas as macros temporariamente
- Abra as configurações da Central de Confiabilidade
Clique em Arquivo > Opções > Central de Confiabilidade > Configurações da Central de Confiabilidade. - Altere as configurações de macro
Selecione Configurações de Macro à esquerda. Escolha “Desabilitar todas as macros com notificação”. Isso impede que qualquer macro seja executada ao abrir um documento. - Abra o documento
Feche a caixa de diálogo Opções e abra o documento. O erro de compilação não deve aparecer porque o Word não tenta compilar as macros. - Reabilite as macros após o reparo
Depois de corrigir o problema subjacente usando o Método 1 ou 2, volte à Central de Confiabilidade e selecione “Desabilitar todas as macros com notificação” ou “Habilitar todas as macros” se você confiar na origem. Não deixe as macros desabilitadas permanentemente se você precisar delas.
Se o Word ainda tiver problemas após a correção principal
O erro aparece em todos os documentos
Se o erro de compilação aparecer em todos os documentos que você abre, o problema está quase certamente no modelo Normal.dotm. Siga o Método 2 acima para excluir o módulo oculto do Normal.dotm. Se não for possível excluir o módulo porque o Word não inicia corretamente, renomeie o arquivo Normal.dotm. Feche o Word, navegue até %appdata%\Microsoft\Templates e renomeie Normal.dotm para Normal.old. O Word cria um novo modelo Normal ao reiniciar. Isso remove todas as macros personalizadas; faça backup do arquivo antigo se precisar dessas macros.
O erro menciona um complemento específico
Alguns complementos de terceiros instalam módulos ocultos no Word. Se a mensagem de erro incluir o nome de um complemento, desabilite esse complemento. Vá em Arquivo > Opções > Complementos. Na parte inferior da caixa de diálogo, escolha Complementos COM no menu Gerenciar e clique em Ir. Desmarque o complemento listado no erro. Reinicie o Word. Se o erro desaparecer, entre em contato com o fornecedor do complemento para obter uma versão atualizada compatível com sua compilação do Office.
O documento contém macros maliciosas
Um erro de compilação também pode aparecer quando o Word bloqueia macros de uma fonte não confiável. Se você recebeu o documento de um remetente desconhecido, não habilite as macros. Use o Método 3 para abrir o documento com as macros desabilitadas. Se o documento funcionar sem macros, o módulo oculto pode conter código que você não deseja executar. Considere excluir as macros permanentemente usando o Método 2 ou salvar o documento como um arquivo .docx, que não pode armazenar código VBA.
Erro de módulo oculto do Word: documentos confiáveis vs. não confiáveis
| Item | Documento Confiável | Documento Não Confiável |
|---|---|---|
| Comportamento das macros | As macros são executadas automaticamente se habilitadas na Central de Confiabilidade | As macros são bloqueadas por padrão com um aviso de segurança |
| Visibilidade do erro de compilação | O erro aparece imediatamente ao abrir o documento | O erro pode aparecer apenas depois de clicar em Habilitar Conteúdo |
| Risco de código malicioso | Baixo se você confiar na origem | Alto; não habilite macros a menos que tenha certeza da origem |
| Melhor abordagem de correção | Remover referências quebradas ou excluir o módulo oculto | Abrir com macros desabilitadas e depois excluir todo o projeto VBA |
Após aplicar a correção, você pode abrir o documento sem o erro de compilação e usar seu conteúdo normalmente. Se você removeu macros, considere se precisa da funcionalidade VBA. Para documentos criados por você, salve uma cópia de backup do código de macro em um arquivo .bas separado usando o comando Exportar Arquivo do editor VBA. Isso permite reimportar o código posteriormente, se necessário.