Note: The other languages of the website are Google-translated. Back to English

Como colorir ou destacar determinada palavra nas células do Excel?

Se uma célula contém várias palavras, como você pode destacar uma determinada palavra apenas nesta célula? E que tal destacar essa determinada palavra em várias células? Este artigo fornecerá um método para alcançá-lo.

Pinte determinada palavra em uma única célula / células múltiplas com código VBA


Pinte determinada palavra em uma única célula / células múltiplas com código VBA

O código VBA a seguir pode ajudá-lo a destacar determinada palavra em uma seleção. Faça o seguinte.

1. Selecione o intervalo que contém as células nas quais deseja destacar uma determinada palavra. Em seguida, pressione o outro + F11 simultaneamente para abrir o Microsoft Visual Basic para Aplicações janela.

2. Na abertura Microsoft Visual Basic para Aplicações janela, clique em inserção > Módulo. Em seguida, copie e cole o código VBA na janela Código.

Código VBA: pinte certas palavras nas células do Excel

Sub HighlightStrings()
    Dim xHStr As String, xStrTmp As String
    Dim xHStrLen As Long, xCount As Long, I As Long
    Dim xCell As Range
    Dim xArr
    On Error Resume Next
    xHStr = Application.InputBox("What is the string to highlight:", "KuTools For Excel", , , , , , 2)
    If TypeName(xHStr) <> "String" Then Exit Sub
    Application.ScreenUpdating = False
        xHStrLen = Len(xHStr)
        For Each xCell In Selection
            xArr = Split(xCell.Value, xHStr)
            xCount = UBound(xArr)
            If xCount > 0 Then
                xStrTmp = ""
                For I = 0 To xCount - 1
                    xStrTmp = xStrTmp & xArr(I)
                    xCell.Characters(Len(xStrTmp) + 1, xHStrLen).Font.ColorIndex = 3
                    xStrTmp = xStrTmp & xHStr
                Next
            End If
        Next
    Application.ScreenUpdating = True
End Sub

3. aperte o F5 chave para executar o código. E no Kutools for Excel caixa de diálogo, digite a palavra certa que você destacará nas células e clique no botão OK botão. Veja a imagem:

Então você pode ver que todas as palavras que você especificou estão coloridas em vermelho nas células selecionadas imediatamente, conforme mostrado na imagem abaixo.


Artigos relacionados:


As melhores ferramentas de produtividade para escritório

O Kutools for Excel resolve a maioria dos seus problemas e aumenta sua produtividade em 80%

  • armadilha para peixes: Insira rapidamente fórmulas complexas, gráficos e qualquer coisa que você tenha usado antes; Criptografar células com senha; Criar lista de discussão e enviar emails ...
  • Barra Super Fórmula (edite facilmente várias linhas de texto e fórmula); Layout de leitura (ler e editar facilmente um grande número de células); Colar na faixa filtrada...
  • Mesclar células / linhas / colunas sem perder dados; Dividir o conteúdo das células; Combinar linhas / colunas duplicadas... Evite células duplicadas; Comparar intervalos...
  • Selecione Duplicado ou Único Linhas; Selecione linhas em branco (todas as células estão vazias); Super Find e Fuzzy Find em muitos livros; Seleção aleatória ...
  • Cópia exata Várias células sem alterar a referência da fórmula; Criação automática de referências para várias folhas; Inserir marcadores, Caixas de seleção e mais ...
  • Extrair Texto, Adicionar texto, remover por posição, Remover Espaço; Criar e imprimir subtotais de paginação; Converter entre conteúdo de células e comentários...
  • Super Filtro (salvar e aplicar esquemas de filtro a outras planilhas); Classificação Avançada por mês / semana / dia, frequência e mais; Filtro Especial por negrito, itálico ...
  • Combine pastas de trabalho e planilhas; Mesclar tabelas com base em colunas-chave; Divida os dados em várias folhas; Conversão em lote de xls, xlsx e PDF...
  • Mais de 300 recursos poderosos. Suporta Office / Excel 2007-2021 e 365. Suporta todos os idiomas. Fácil implantação em sua empresa ou organização. Recursos completos de avaliação gratuita de 30 dias. Garantia de devolução do dinheiro em 60 dias.
guia kte 201905

Guia do Office traz interface com guias para o Office e torna seu trabalho muito mais fácil

  • Habilite a edição e leitura com guias em Word, Excel, PowerPoint, Publisher, Access, Visio e Project.
  • Abra e crie vários documentos em novas guias da mesma janela, em vez de em novas janelas.
  • Aumenta sua produtividade em 50% e reduz centenas de cliques do mouse para você todos os dias!
parte inferior da aba do escritório
Comentários (23)
Avaliado 5 fora do 5 · classificações 1
Este comentário foi feito pelo moderador no site
Você não explica como abrir a "caixa de diálogo Kutools for Excel" mencionada na última etapa.
Este comentário foi feito pelo moderador no site
Caro Justino,
Desculpe por isso. Depois de colar o código VBA na janela Código, pressione a tecla F5 para executar o código e, em seguida, a caixa de diálogo "Kutools for Excel" será aberta. Obrigada.
Este comentário foi feito pelo moderador no site
Existe alguma maneira de fazer o código destacar as palavras automaticamente enquanto eu edito as guias?
Este comentário foi feito pelo moderador no site
Oi,
Desculpe não pode ajudar com isso. Obrigado por seu comentário.
Este comentário foi feito pelo moderador no site
OBRIGADO, OBRIGADO, OBRIGADO
Este comentário foi feito pelo moderador no site
Quisera ressaltar várias palavras ao tempo, como lo puedo fazer?
Este comentário foi feito pelo moderador no site
Eso es lo que estoy tratando de hacer tamiben (Isso é o que estou tentando fazer também)
Este comentário foi feito pelo moderador no site
Caso você prefira que a pesquisa/destaque não faça distinção entre maiúsculas e minúsculas, altere a linha 'xArr = Split(xCell.Value, xHStr)' para 'xArr = Split(LCase(xCell.Value), LCase(xHStr))'. Além disso, observei que pressionar F5 não executa o script (mas, em vez disso, fornece outra janela modal). Eu o acessei habilitando a guia Desenvolvedor usando as opções do Excel (Personalizar Faixa de Opções) e, posteriormente, clicando em Macros.
Este comentário foi feito pelo moderador no site
Obrigado, isso foi muito útil! Existe uma maneira de ajustar a macro para que ela destaque apenas palavras inteiras em vez de parciais. Por exemplo, estou tentando destacar a palavra "design", mas destaca o "design" na palavra "designar". Eu quero pular essa palavra se não for a palavra inteira. Obrigado!
Este comentário foi feito pelo moderador no site
Bom Dia,
É possível suprimir la boite de dialogue et de mettre par défaut "apple" comme mot recherché ?
obrigado
Este comentário foi feito pelo moderador no site
Olá PAUC,
O código a seguir pode fazer um favor. Por favor, tente.
Sub HighlightStrings()
'Updated by Extendoffice 20220721
    Dim xHStr As String, xStrTmp As String
    Dim xHStrLen As Long, xCount As Long, I As Long
    Dim xCell As Range
    Dim xArr
    On Error Resume Next
    xHStr = "apple"
    If TypeName(xHStr) <> "String" Then Exit Sub
    Application.ScreenUpdating = False
        xHStrLen = Len(xHStr)
        For Each xCell In Selection
            xArr = Split(xCell.Value, xHStr)
            xCount = UBound(xArr)
            If xCount > 0 Then
                xStrTmp = ""
                For I = 0 To xCount - 1
                    xStrTmp = xStrTmp & xArr(I)
                    xCell.Characters(Len(xStrTmp) + 1, xHStrLen).Font.ColorIndex = 3
                    xStrTmp = xStrTmp & xHStr
                Next
            End If
        Next
    Application.ScreenUpdating = True
End Sub
Este comentário foi feito pelo moderador no site
bom

Coloreaza cuvantul doar daca e la inceput. Daca e la mijloc em aceeasi casuta de excel sau la sfarsit nu-l coloreaza.
Ce anume como putea schimba em bacalhau pentru al colora indiferente unde se afla em casuta excel?

Thanks!
Este comentário foi feito pelo moderador no site
Olá Andreia,
Se você deseja apenas destacar a palavra se estiver no início das células selecionadas. O seguinte código VBA pode lhe fazer um favor. Por favor, tente.
Sub HighlightStrings()
'Updated by Extendoffice 20220805
    Dim xHStr As String, xStrTmp As String
    Dim xHStrLen As Long, xCount As Long, I As Long
    Dim xCell As Range
    Dim xArr
    On Error Resume Next
    xHStr = Application.InputBox("What is the string to highlight:", "KuTools For Excel", , , , , , 2)
    If TypeName(xHStr) <> "String" Then Exit Sub
    Application.ScreenUpdating = False
        xHStrLen = Len(xHStr)
        For Each xCell In Selection
            If xHStrLen <= Len(xCell.Value) Then
                If xHStr = Left(xCell.Value, xHStrLen) Then
                    xCell.Characters(1, xHStrLen).Font.ColorIndex = 3
                End If
            End If
        Next
    Application.ScreenUpdating = True
End Sub
Este comentário foi feito pelo moderador no site
Olá,
a me servirebbe evidenziare tutti i numeri (comprensivi di due decimali) da -10,00 a 0 in rosso e da 0 a +10,00 in green. como posso tarifa para não aggiungere singolarmente ogni dato senza aggiungerli tutti manualmente?

Muito obrigado
Este comentário foi feito pelo moderador no site
Olá Ciao,
Seus números estão localizados em células diferentes em um intervalo? Nesse caso, você pode criar duas regras de formatação condicional (entre -10 e 0, entre 0 e 10) para destacar esses números. Se não, você pode fazer upload de uma captura de tela de seus dados?
Este comentário foi feito pelo moderador no site
Isso é muito bom, thx! Eu estou querendo saber se alguém sabe como fazê-lo funcionar no Mac? Muito Obrigado
Avaliado 5 fora do 5
Este comentário foi feito pelo moderador no site
como o script poderia ser alterado para fazer o seguinte?

aumentar a fonte em 1 tamanho e
destacar várias palavras com uma execução do script?

Thx!
Este comentário foi feito pelo moderador no site
Olá t.taln,

Se você quiser aumentar o tamanho da fonte em 1 e destacar várias palavras ao mesmo tempo, adicione a seguinte linha após a linha "xCell.Characters(Len(xStrTmp) + 1, xHSrLen).Font.ColorIndex = 3" no código VBA.
Nota: você precisa saber o tamanho da fonte atual da célula selecionada de antemão e, em seguida, inserir um número um tamanho maior do que a palavra original. O número 12 na linha abaixo é o tamanho da fonte que atribuirei às palavras correspondentes. E o tamanho da fonte original da palavra é 11.
xCell.Characters(Len(xStrTmp) + 1, xHStrLen).Font.Size = 12
Este comentário foi feito pelo moderador no site
Obrigado isso é muito útil. Como posso destacar uma palavra em vez de uma cor de fonte?

Atenciosamente.
Este comentário foi feito pelo moderador no site
Obrigada. isso foi muito útil. Alguém pode dizer como colorir o texto em vez de destacá-lo?

Saudações
Este comentário foi feito pelo moderador no site
Olá Shaik Faiaz hamad,

O Excel não permite colorir uma parte de uma célula. Lamento não poder ajudá-lo com este problema.
Este comentário foi feito pelo moderador no site
Bonjour Cristal,
Merci pour ce code. É possível usar adaptadores para obter evidências adicionais de "Apple,Rose,Vert,Merci"
obrigado
Este comentário foi feito pelo moderador no site
Olá Cous,

O seguinte código VBA pode ajudar. Depois de executar o código, você obterá uma caixa de diálogo. Por favor, digite as palavras que deseja destacar e separe-as por vírgula.
https://www.extendoffice.com/images/stories/comments/comment-picture-zxm/highlight.png
Sub HighlightStrings()
'Updated by Extendoffice 20230130
    Dim xHStr As String, xStrTmp As String
    Dim xHStrLen As Long, xCount As Long, I As Long
    Dim xCell As Range
    Dim xArr
    Dim xArr2
    On Error Resume Next
    xHStr = Application.InputBox("What is the string to highlight:", "KuTools For Excel", , , , , , 2)
    If TypeName(xHStr) <> "String" Then Exit Sub
    Application.ScreenUpdating = False
    
    xArr2 = Split(xHStr, ",")
    For j = 0 To UBound(xArr2)
        xHStr = xArr2(j)
    
        xHStrLen = Len(xHStr)
        For Each xCell In Selection
            xArr = Split(xCell.Value, xHStr)
            xCount = UBound(xArr)
            If xCount > 0 Then
                xStrTmp = ""
                For I = 0 To xCount - 1
                    xStrTmp = xStrTmp & xArr(I)
                    xCell.Characters(Len(xStrTmp) + 1, xHStrLen).Font.ColorIndex = 3
                    xStrTmp = xStrTmp & xHStr
                Next
            End If
        Next
    Next
    
    Application.ScreenUpdating = True
End Sub
Não há comentários postados aqui ainda
Deixe o seu comentário
Postando como convidado
×
Avalie esta postagem:
0   Personagens
Locais sugeridos

Siga-nos

Copyright © 2009 - www.extendoffice.com. | Todos os direitos reservados. Distribuído por ExtendOffice. | | | Mapa do site
Microsoft e o logotipo do Office são marcas comerciais ou marcas registradas da Microsoft Corporation nos Estados Unidos e / ou em outros países.
Protegido por Sectigo SSL