Ir para o conteúdo principal

Como destacar um texto específico em uma célula com base em outro texto?

No Excel, pode ser fácil destacar as células com base em um texto específico, mas, aqui, quero destacar um texto específico dentro de uma célula para destacá-lo, mas não a célula inteira. Isso pode ser problemático para a maioria de nós. Neste artigo, irei falar sobre alguns truques para resolver esse trabalho no Excel.


Destaque um ou mais textos específicos em várias células com o código VBA

Por exemplo, eu tenho uma série de strings de texto e agora, quero destacar o texto específico “Céu”Nessas células para obter o resultado conforme as seguintes capturas de tela mostradas:

Para destacar apenas parte do texto em uma célula, o seguinte código VBA pode ajudá-lo.

1. Selecione as células nas quais deseja destacar o texto específico e, em seguida, mantenha pressionado o ALT + F11 chaves para abrir o Microsoft Visual Basic para Aplicações janela.

2. Clique inserção > Móduloe cole o seguinte código no Módulo Janela.

Código VBA: destaque uma parte do texto em uma célula:

Sub HighlightStrings()
'Updateby Extendoffice
Application.ScreenUpdating = False
Dim Rng As Range
Dim cFnd As String
Dim xTmp As String
Dim x As Long
Dim m As Long
Dim y As Long
cFnd = InputBox("Enter the text string to highlight")
y = Len(cFnd)
For Each Rng In Selection
  With Rng
    m = UBound(Split(Rng.Value, cFnd))
    If m > 0 Then
      xTmp = ""
      For x = 0 To m - 1
        xTmp = xTmp & Split(Rng.Value, cFnd)(x)
        .Characters(Start:=Len(xTmp) + 1, Length:=y).Font.ColorIndex = 3
        xTmp = xTmp & cFnd
      Next
    End If
  End With
Next Rng
Application.ScreenUpdating = True
End Sub

3. Então aperte F5 para executar este código e uma caixa de prompt aparecerá para lembrá-lo de inserir o texto que deseja destacar apenas, consulte a captura de tela:

4. E, em seguida, clique em OK botão, todo o texto que você especificou foi destacado apenas dentro das células, veja a captura de tela:

Tips: Se você precisar destacar várias palavras-chave nas sequências de texto, aplique o código a seguir:
Código VBA: destaque várias palavras-chave de strings de texto:
Sub HighlightStrings()
'Updateby Extendoffice
Application.ScreenUpdating = False
Dim Rng As Range
Dim cFnd As String
Dim xTmp As String
Dim x As Long
Dim m As Long
Dim y As Long
Dim xFNum As Integer
Dim xArrFnd As Variant
Dim xStr As String
cFnd = InputBox("Please enter the text, separate them by comma:")
If Len(cFnd) < 1 Then Exit Sub
xArrFnd = Split(cFnd, ",")
For Each Rng In Selection
With Rng
For xFNum = 0 To UBound(xArrFnd)
xStr = xArrFnd(xFNum)
y = Len(xStr)
m = UBound(Split(Rng.Value, xStr))
If m > 0 Then
xTmp = ""
For x = 0 To m - 1
xTmp = xTmp & Split(Rng.Value, xStr)(x)
.Characters(Start:=Len(xTmp) + 1, Length:=y).Font.ColorIndex = 3
xTmp = xTmp & xStr
Next
End If
Next xFNum
End With
Next Rng
Application.ScreenUpdating = True
End Sub

Em seguida, na caixa exibida, insira as palavras-chave que deseja destacar (separe as palavras com uma vírgula), consulte a captura de tela:

E então, clique OK botão, as palavras especificadas foram destacadas de uma vez, veja as capturas de tela:

Note: Os códigos acima diferenciam maiúsculas de minúsculas.


Destaque um ou mais textos específicos em várias células com um recurso incrível

Se você não está familiarizado com o código do Excel, apresentarei aqui uma ferramenta fácil - Kutools for Excel, Com o seu Marcar palavra-chave recurso, você pode destacar uma ou mais palavras-chave específicas de uma vez dentro das células.

Nota:Para aplicar estes Marcar palavra-chave recursos, em primeiro lugar, você deve baixar o Kutools for Excele, em seguida, aplique os recursos de forma rápida e fácil.

Depois de instalar Kutools for Excel, faça o seguinte:

1. Clique Kutools > Texto > Marcar palavra-chave, veja a captura de tela:

2. No Marcar palavra-chave caixa de diálogo, execute as seguintes operações:

  • Selecione o intervalo de dados que deseja usar a partir do Variação caixa de texto;
  • Selecione as células que contêm as palavras-chave que você deseja destacar, você também pode inserir as palavras-chave manualmente (separadas por vírgula) no Palavra-chave caixa de texto
  • Por fim, você deve especificar uma cor de fonte para destacar os textos por cheque Marque as cores da palavra-chave opção. (Para colorir as células inteiras que contêm as palavras-chave, selecione o Marque as cores do conteúdo da célula opção)

3. Então clique Ok botão, todos os textos especificados foram destacados como a imagem abaixo mostrada:

Note: Este recurso não diferencia maiúsculas de minúsculas, se você quiser destacar o texto com diferenciação de maiúsculas e minúsculas, por favor, verifique match Case no Marcar palavra-chave caixa de diálogo.


Destacar um texto específico dentro de uma célula com base em outro texto com código VBA

Aqui está outra situação, eu tenho duas colunas em que a primeira coluna contém as sequências de texto e a segunda coluna é o texto específico, agora, eu preciso destacar o texto relativo na primeira coluna com base no texto específico na segunda coluna para cada linha.

1. Segure o ALT + F11 chaves para abrir o Microsoft Visual Basic para Aplicações janela.

2. Clique inserção > Móduloe cole o seguinte código no Módulo Janela.

Código VBA: destaque uma parte do texto dentro de uma célula com base em outro texto:

Sub highlight()
'Updateby Extendoffice
    Dim xStr As String
    Dim xRg As Range
    Dim xTxt As String
    Dim xCell As Range
    Dim xChar As String
    Dim I As Long
    Dim J As Long
    On Error Resume Next
    If ActiveWindow.RangeSelection.Count > 1 Then
      xTxt = ActiveWindow.RangeSelection.AddressLocal
    Else
      xTxt = ActiveSheet.UsedRange.AddressLocal
    End If
LInput:
    Set xRg = Application.InputBox("please select the data range:", "Kutools for Excel", xTxt, , , , , 8)
    If xRg Is Nothing Then Exit Sub
    If xRg.Areas.Count > 1 Then
        MsgBox "not support multiple columns"
        GoTo LInput
    End If
    If xRg.Columns.Count <> 2 Then
        MsgBox "the selected range can only contain two columns "
        GoTo LInput
    End If
    For I = 0 To xRg.Rows.Count - 1
        xStr = xRg.Range("B1").Offset(I, 0).Value
        With xRg.Range("A1").Offset(I, 0)
            .Font.ColorIndex = 1
            For J = 1 To Len(.Text)
                If Mid(.Text, J, Len(xStr)) = xStr Then .Characters(J, Len(xStr)).Font.ColorIndex = 3
            Next
        End With
    Next I
End Sub

3. Depois de colar o código, pressione F5 para executá-lo, uma caixa de prompt aparecerá para lembrá-lo de selecionar o intervalo de dados que contém a string de texto e o texto específico que você deseja destacar e com base, consulte a captura de tela:

4. E, em seguida, clique em OK botão, todo o texto correspondente na primeira coluna com base no texto específico na segunda coluna foi colorido de vermelho como a seguinte captura de tela:


Mais artigos relativos:

  • Texto da parte em negrito ao concatenar duas colunas no Excel
  • Na planilha do Excel, depois de concatenar dois valores de célula com fórmulas, você pode descobrir que a parte em negrito do texto não aparecerá na célula de fórmula combinada. Isso pode ser irritante às vezes, como você poderia colocar o texto em negrito ao concatenar duas colunas no Excel?
  • Concatene colunas de células e mantenha a cor do texto no Excel
  • Como todos sabemos, ao concatenar ou combinar colunas de células em uma coluna, a formatação da célula (como cor da fonte do texto, formatação de número, etc.) será perdida. Neste artigo, vou apresentar alguns truques para combinar as colunas das células em uma e manter a cor do texto o mais facilmente possível no Excel.
  • Exibir texto específico com base em valores em outra coluna
  • Supondo que eu tenha uma lista de números, agora, quero exibir algum texto específico em outra coluna com base nos números dessa coluna. Por exemplo, se o número da célula estiver entre 1-100, quero que o texto “Diminuir” seja exibido na célula adjacente, se o número estiver entre 101-200, o texto “Estável” será exibido e se o número for maior que 200 , um texto “Aumentar” é exibido conforme a captura de tela a seguir. Para resolver essa tarefa no Excel, as fórmulas a seguir neste artigo podem ajudá-lo.
  • Soma as células com texto e números no Excel
  • Por exemplo, eu tenho uma lista de valores contendo strings numéricas e textuais, agora, eu quero somar apenas os números com base no mesmo texto, veja a imagem a seguir. Normalmente, você não pode somar os valores da lista com string de texto diretamente, aqui, vou apresentar algumas fórmulas para lidar com esta tarefa.

Melhores ferramentas de produtividade de escritório

🤖 Assistente de IA do Kutools: Revolucionar a análise de dados com base em: Execução Inteligente   |  Gerar Código  |  Crie fórmulas personalizadas  |  Analise dados e gere gráficos  |  Invocar funções do Kutools...
Recursos mais comuns: Encontre, destaque ou identifique duplicatas   |  Excluir linhas em branco   |  Combine colunas ou células sem perder dados   |   Rodada sem Fórmula ...
Super pesquisa: VLookup de múltiplos critérios    VLookup de múltiplos valores  |   VLookup em várias planilhas   |   Pesquisa Difusa ....
Lista suspensa avançada: Crie rapidamente uma lista suspensa   |  Lista suspensa de dependentes   |  Lista suspensa de seleção múltipla ....
Gerenciador de colunas: Adicione um número específico de colunas  |  Mover colunas  |  Alternar status de visibilidade de colunas ocultas  |  Compare intervalos e colunas ...
Recursos em destaque: Foco da Grade   |  Vista de Design   |   Grande Barra de Fórmula    Gerenciador de pastas de trabalho e planilhas   |  Biblioteca (Auto texto)   |  Data Picker   |  Combinar planilhas   |  Criptografar/Descriptografar Células    Enviar e-mails por lista   |  Super Filtro   |   Filtro Especial (filtro negrito/itálico/tachado...) ...
15 principais conjuntos de ferramentas12 Texto Ferramentas (Adicionar texto, Remover Personagens, ...)   |   50+ de cores Tipos (Gráfico de Gantt, ...)   |   Mais de 40 práticos Fórmulas (Calcule a idade com base no aniversário, ...)   |   19 Inclusão Ferramentas (Insira o código QR, Inserir imagem do caminho, ...)   |   12 Conversão Ferramentas (Números para Palavras, Conversão de moedas, ...)   |   7 Unir e dividir Ferramentas (Combinar linhas avançadas, Dividir células, ...)   |   ... e mais

Aprimore suas habilidades de Excel com o Kutools para Excel e experimente uma eficiência como nunca antes. Kutools para Excel oferece mais de 300 recursos avançados para aumentar a produtividade e economizar tempo.  Clique aqui para obter o recurso que você mais precisa...

Descrição


Office Tab 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!
Comments (39)
No ratings yet. Be the first to rate!
This comment was minimized by the moderator on the site
Thank you for "Highlight A Specific Text Within Multiple Cells With VBA Code" It works great. Would you please explain:
I need remove "Highlight"

so what can I do

thanks
This comment was minimized by the moderator on the site
Hello, Mukesh
If you want to delete the specific text from multiple cells, you can apply the Find & Replace feature in Excel.
You just need to enter the specific text that you want to delete into the Find textbox, and leave the Replace box blank, at last, click Replace All to get your results.
Please have a try, hope it can help you!
This comment was minimized by the moderator on the site
This is amazing! One question: Is there any way that an Undo (CTRL+Z) can be used after running this?
This comment was minimized by the moderator on the site
Hello, ChristineW,The vba codes can't support Undo, so when applying the code, you'd better copy and paste the original data to another sheet first.If you use Kutools for Excel, the utility support Undo.
This comment was minimized by the moderator on the site
JUST WANT TO SLAY THANK YOU AS THE VBA FORMULA WORKS FOR ME... IT AWESOME.
This comment was minimized by the moderator on the site
Wow! Thank you!
This comment was minimized by the moderator on the site
Awesome. thanks
This comment was minimized by the moderator on the site
This was very useful, thanks very much!
This comment was minimized by the moderator on the site
Hi,
Please any one help me. I want to highlight the specific number in same sentence. For ex : " 2 days leave scansion" want to highlight only "2" in sentence.
This comment was minimized by the moderator on the site
Hi, anyone help me this. i want to highlight the Specific number in Cell within the same sentence. for Ex : " 2 days leave scansion " in this sentence want to highlight number.
This comment was minimized by the moderator on the site
Hi,
could anyone help me with the following

my Cells in Column "G" contain the text from Column Z to AN, not compulsory that Column g contains all the text from Z to AN.

My work here is to Highlight the text in Column G if it does not available in any of Column Z - AN

For example : Cell G1 contains (Hello sir I am doing well) but The text "Sir" do not exist in Column "Z1" to "AN1"

So i need to highlight the text "Sir"
This comment was minimized by the moderator on the site
i get a run-time error '13', type mismatch when i run the script. any suggestions?
This comment was minimized by the moderator on the site
I had the same issue; I found that one of my collumns were formulas and it was looking in them which was what triggered the error 13. Selected a range wihtout formula containing the text to highlight and it worked.
There are no comments posted here yet
Load More
Please leave your comments in English
Posting as Guest
×
Rate this post:
0   Characters
Suggested Locations