Como Resolver Comentários do Word em Lote com Data Anterior a um Período Específico
🔍 WiseChecker

Como Resolver Comentários do Word em Lote com Data Anterior a um Período Específico

Se você tem um documento do Word com dezenas ou centenas de comentários de um período de revisão, resolver cada um manualmente é demorado e sujeito a erros. O Word não possui um comando nativo para resolver todos os comentários anteriores a uma data escolhida. Este artigo explica como usar uma macro VBA simples para resolver comentários em lote com base em uma data de corte que você define, economizando um tempo significativo de edição.

Principais Conclusões: Automatizando a Resolução de Comentários por Data

  • Macro VBA personalizando a propriedade Comment.Date: Permite filtrar comentários inseridos antes de uma data específica e resolvê-los em um único lote.
  • Configurações de segurança de macro em Arquivo > Opções > Central de Confiabilidade > Configurações da Central de Confiabilidade > Configurações de Macro: Devem ser ajustadas para habilitar todas as macros ou macros assinadas digitalmente antes da execução do script.
  • Barra de Ferramentas de Acesso Rápido ou atalho de teclado (Alt+F8): Fornece acesso rápido para executar a macro sem abrir o editor VBA toda vez.

ADVERTISEMENT

Como o Word Armazena Comentários e a Propriedade Date

Cada comentário em um documento do Word é armazenado como um objeto Comment no modelo de objeto VBA. O objeto inclui uma propriedade Date que registra o timestamp exato em que o comentário foi inserido. O Word também fornece um método Resolve que marca um comentário como resolvido, ocultando-o da lista padrão de comentários, mas sem excluí-lo. Ao escrever uma macro VBA curta que percorre todos os comentários, verifica a propriedade Date em relação a uma data de corte e chama o método Resolve nos comentários correspondentes, você pode resolver comentários antigos em lote em segundos.

Para executar uma macro VBA, você precisa habilitar o suporte a macros no Word. A macro descrita neste artigo não modifica nenhum conteúdo do documento além do status do comentário. Antes de começar, certifique-se de que seu documento esteja salvo em um formato habilitado para macros (.docm) se você planeja manter a macro anexada ao documento.

Passos para Criar e Executar a Macro de Resolução em Lote

  1. Abra o editor VBA
    Pressione Alt+F11 no teclado. Isso abre a janela do Microsoft Visual Basic for Applications.
  2. Insira um novo módulo
    No painel do Explorer de Projetos à esquerda, clique com o botão direito no nome do seu documento (ou Normal para uso global) e escolha Inserir > Módulo. Uma janela de código em branco aparece.
  3. Cole o código da macro
    Copie e cole o seguinte código na janela do módulo:
    Sub ResolveCommentsOlderThanDate()
    Dim c As Comment
    Dim cutoffDate As Date
    cutoffDate = DateSerial(2024, 6, 1) ' altere para sua data de corte
    For Each c In ActiveDocument.Comments
    If c.Date < cutoffDate Then
    c.Resolve
    End If
    Next c
    End Sub

    Substitua DateSerial(2024, 6, 1) pela data de corte desejada. O formato é DateSerial(ano, mês, dia).
  4. Execute a macro
    Pressione Alt+F8 para abrir a caixa de diálogo Macro. Selecione ResolveCommentsOlderThanDate na lista e clique em Executar. Todos os comentários com data anterior à sua data de corte são resolvidos instantaneamente.
  5. Salve o documento (opcional)
    Se quiser manter a macro no documento para uso futuro, salve o arquivo como um documento habilitado para macros (.docm) usando Arquivo > Salvar Como e selecionando Documento Habilitado para Macro do Word.

ADVERTISEMENT

Problemas Comuns ao Executar a Macro

Erro “A macro não pode ser executada porque as macros estão desabilitadas”

O Word bloqueia macros por padrão por segurança. Vá para Arquivo > Opções > Central de Confiabilidade > Configurações da Central de Confiabilidade > Configurações de Macro. Selecione Habilitar todas as macros ou Desabilitar todas as macros, exceto as assinadas digitalmente. Reinicie o Word e execute a macro novamente.

Comentários ainda visíveis após executar a macro

O método Resolve altera o status do comentário para resolvido, mas os comentários resolvidos permanecem visíveis no documento a menos que você altere as configurações de exibição de revisão. Para ocultar comentários resolvidos, vá para a guia Revisão, clique em Mostrar Comentários e desmarque Comentários Resolvidos.

A macro resolve comentários do intervalo de datas errado

A propriedade Date usa a data e hora do sistema no momento em que o comentário foi criado. Se você copiou comentários de outro documento, a data pode refletir a data de inserção original. Verifique manualmente alguns comentários passando o mouse sobre eles para confirmar as datas. Ajuste o valor de cutoffDate na macro conforme necessário.

Resolução Manual vs. Baseada em Macro

Item Resolução Manual Resolução com Macro
Tempo necessário para 50+ comentários 5–15 minutos dependendo da rolagem Menos de 1 segundo
Risco de perder comentários Alto — fácil pular comentários ao rolar Nenhum — a macro verifica todos os comentários
Capacidade de filtrar por data Não é possível — precisa resolver um por um Integrado via parâmetro DateSerial
Requer conhecimento em VBA Não Mínimo — só precisa editar a linha da data
Formato de documento necessário Qualquer .doc ou .docx .docm se a macro for salva dentro do documento

Agora você pode resolver todos os comentários anteriores a uma data específica em uma única execução de macro. Para refinar o processo, modifique a macro para resolver comentários dentro de um intervalo de datas adicionando uma segunda variável DateSerial para o limite superior. Por exemplo, use If c.Date >= startDate And c.Date <= endDate Then para resolver comentários de um mês específico.

ADVERTISEMENT