Neste artigo, temos o prazer de mostrar a você 2 métodos úteis para substituir a cor de destaque em seu documento do Word.
Às vezes, você pode destacar conteúdos diferentes com cores diferentes. Mas, ao contrário da cor da fonte, você não pode utilizar “Localizar e substituir” para localizar textos em uma cor de destaque específica e substituí-la por outra.
Portanto, vamos precisar de algumas soluções alternativas. A seguir estão 2 maneiras disponíveis para casos diferentes.
Método 1: substituir todas as cores de destaque pela mesma
A cor de destaque associada à caixa de diálogo “Localizar e Substituir” é a atual selecionada no ícone Destaque.
- Em primeiro lugar, na guia “Página inicial” e no grupo “Fonte”, clique no botão suspenso no comando “Cor de destaque do texto”. Escolha uma cor para a qual deseja alterar todas as cores de destaque. Por exemplo, escolhemos “Bright Green” aqui.
- Em seguida, pressione “Ctrl + H” para acionar a caixa de diálogo “Localizar e substituir”.
- Coloque o cursor dentro da caixa de texto "Localizar".
- Clique em “Mais” para trazer mais opções e clique em “Formatar”.
- E escolha “Destacar”.
- Em seguida, coloque o cursor dentro da caixa “Substituir por” e repita os passos 4 e 5.
- Por fim, clique em “Substituir tudo”.
Agora você substituiu todas as cores de destaque pelo verde brilhante.
Método 2: substituir uma cor de destaque específica por outra
Para realizar esta tarefa, uma macro é necessária.
- primeiro e primeiroost, pressione “Alt+F11” para abrir o editor VBA.
- Em seguida, clique no projeto “Normal” na coluna da esquerda.
- Em seguida, clique na guia "Inserir" na barra de menu.
- E escolha “Módulo” no menu suspenso.
- Abra o novo módulo clicando duas vezes.
- Agora cole os seguintes códigos:
Sub ReplaceOneHighlightColorToAnother() Dim strFindColor As String Dim strReplaceColor As String Dim objDoc As Document Dim objRange As Range Application.ScreenUpdating = False Set objDoc = ActiveDocument strFindColor = InputBox("Especificar uma cor (digite o valor):", "Especificar cor de destaque" ) strReplaceColor = InputBox("Especificar uma nova cor (digite o valor):", "Nova cor de destaque") With Selection .HomeKey Unit:=wdStory With Selection.Find .Highlight = True Do While .Execute If Selection.Range.HighlightColorIndex = strFindColor Then Set objRange = Selection.Range objRange.HighlightColorIndex = strReplaceColor Selection.Collapse wdCollapseEnd End If Loop End With End With Application.ScreenUpdating = True End Sub
- Em seguida, clique no botão "Executar" ou pressione "F5".
- Em seguida, na caixa "Especificar cor de destaque", insira um valor que represente a cor a ser substituída. Para obter o valor correspondente de uma cor específica, você pode visitar este link: https://docs.microsoft.com/en-us/office/vba/api/Word.WdColorIndex
- Por exemplo, se quisermos substituir a cor amarela por verde brilhante, inserimos “7” na caixa “Especificar cor de destaque” e clicamos em “OK”.
- Em seguida, na caixa “Nova cor de destaque”, insira um valor da nova cor e clique em “OK”.
Aqui está o possível resultado da substituição do amarelo pelo verde brilhante.
Evite desastres de perda de dados
O Word é um grande auxiliar em nosso trabalho diário. Portanto, não é difícil imaginar a catástrofe que pode trazer quando desaba. Para evitar a perda de dados críticos, você pode obter um Correção de palavras ferramenta com antecedência. Com esse utilitário em mãos, você não precisa se preocupar com a perda de dados.
Introdução do autor:
Vera Chen é especialista em recuperação de dados em DataNumen, Inc., líder mundial em tecnologias de recuperação de dados, incluindo xlsx corrompido e pdf reparar produtos de software. Para mais informações visite www.datanumen.com
Acho que a macro só funciona se houver uma lacuna não destacada entre as cores. Se você tiver duas cores diferentes de destaque se tocando, a macro encontra um exemplo de destaque e determina que sua “cor” é 999999 ou algo estranho assim, o código para misto. A única maneira de contornar isso é passar pelo caractere de destaque misto por caractere para determinar onde a mudança de cor ocorre e, em seguida, identificar o intervalo como dois intervalos de cores separados, aos quais a macro pode ser aplicada separadamente. É possível, mas muito mais desajeitado e lento.
teste
Copiei seu código VBA e o executei. Nenhum erro, mas não parecia fazer nada. Experimentei várias variações de cores de destaque, como rosa (5), amarelo (7) e verde brilhante (4). Talvez tenha havido uma atualização do VBA com a versão do Office 365, que causou essa alteração. O localizar e substituir funcionou bem.