Passer au contenu principal

Comment mettre en évidence un texte spécifique dans une cellule en fonction d'un autre texte?

Dans Excel, il peut être facile pour nous de mettre en évidence les cellules en fonction d'un texte spécifique, mais, ici, je souhaite mettre en évidence un texte spécifique dans une cellule pour le rendre exceptionnel, mais pas la cellule entière. C'est peut-être un problème pour la plupart d'entre nous. Cet article, je vais parler de quelques astuces pour résoudre ce travail dans Excel.


Mettez en surbrillance un ou plusieurs textes spécifiques dans plusieurs cellules avec le code VBA

Par exemple, j'ai une plage de chaînes de texte, et maintenant, je veux mettre en évidence le texte spécifique "Sky»Dans ces cellules pour obtenir le résultat comme les captures d'écran suivantes:

Pour ne mettre en évidence qu'une partie du texte dans une cellule, le code VBA suivant peut vous aider.

1. Sélectionnez les cellules dans lesquelles vous souhaitez mettre en surbrillance le texte spécifique, puis maintenez la touche ALT + F11 clés pour ouvrir le Microsoft Visual Basic pour applications fenêtre.

2Cliquez sur insérer > Moduleet collez le code suivant dans le Module Fenêtre.

Code VBA: mettez en surbrillance une partie de texte dans une cellule:

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. Puis appuyez F5 pour exécuter ce code, et une boîte de dialogue apparaîtra pour vous rappeler d'entrer le texte que vous souhaitez mettre en surbrillance uniquement, voir capture d'écran:

4. Et puis cliquez OK bouton, tout le texte que vous avez spécifié a été mis en surbrillance uniquement dans les cellules, voir capture d'écran:

Pourboires: Si vous devez mettre en évidence plusieurs mots-clés à partir des chaînes de texte, veuillez appliquer le code ci-dessous:
Code VBA: mettez en surbrillance plusieurs mots-clés à partir de chaînes de texte:
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

Ensuite, dans la zone pop-out, veuillez entrer les mots-clés que vous souhaitez mettre en évidence, (séparez les mots par une virgule), voir capture d'écran:

Et puis, cliquez OK bouton, les mots spécifiés ont été mis en surbrillance à la fois, voir les captures d'écran:

Notes: Les codes ci-dessus sont sensibles à la casse.


Mettez en surbrillance un ou plusieurs textes spécifiques dans plusieurs cellules avec une fonctionnalité étonnante

Si vous n'êtes pas familier avec le code dans Excel, ici, je vais vous présenter un outil simple - Kutools for Excel, Avec son Marquer le mot-clé , vous pouvez mettre en évidence un ou plusieurs mots-clés spécifiques à la fois dans les cellules.

Remarque:Pour appliquer ces Marquer le mot-clé fonctionnalités, tout d'abord, vous devez télécharger le Kutools for Excel, puis appliquez les fonctionnalités rapidement et facilement.

Après l'installation de Kutools for Excel, procédez comme suit:

1Cliquez sur Kutools > Texte > Marquer le mot-clé, voir capture d'écran:

2. Dans le Marquer le mot-clé boîte de dialogue, veuillez effectuer les opérations suivantes:

  • Sélectionnez la plage de données que vous souhaitez utiliser dans le Catégorie zone de texte;
  • Sélectionnez les cellules contenant les mots-clés que vous souhaitez mettre en évidence, vous pouvez également entrer les mots-clés manuellement (séparés par une virgule) dans le Mots-clés zone de texte
  • Enfin, vous devez spécifier une couleur de police pour mettre en évidence les textes par chèque Marquer les couleurs des mots clés option. (Pour colorer les cellules entières contenant les mots-clés, sélectionnez le Marquer les couleurs du contenu de la cellule option)

3. Puis clique Ok bouton, tous les textes spécifiés ont été mis en évidence comme ci-dessous la capture d'écran montrée:

Notes: Cette fonctionnalité n'est pas sensible à la casse, si vous souhaitez mettre en évidence le texte avec la casse, veuillez vérifier casse dans l' Marquer le mot-clé boite de dialogue.


Mettez en surbrillance un texte spécifique dans une cellule en fonction d'un autre texte avec le code VBA

Voici une autre situation, j'ai deux colonnes dont la première colonne contient les chaînes de texte et la deuxième colonne est le texte spécifique, maintenant, je dois mettre en évidence le texte relatif dans la première colonne en fonction du texte spécifique dans la deuxième colonne pour chaque rangée.

1. Maintenez le ALT + F11 clés pour ouvrir le Microsoft Visual Basic pour applications fenêtre.

2Cliquez sur insérer > Moduleet collez le code suivant dans le Module Fenêtre.

Code VBA: mettez en surbrillance une partie de texte dans une cellule en fonction d'un autre texte:

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. Après avoir collé le code, appuyez sur F5 clé pour l'exécuter, une boîte de dialogue apparaîtra pour vous rappeler de sélectionner la plage de données qui contient à la fois la chaîne de texte et le texte spécifique que vous souhaitez mettre en surbrillance et basé sur, voir capture d'écran:

4. Et puis cliquez OK bouton, tout le texte correspondant dans la première colonne basé sur le texte spécifique dans la deuxième colonne a été coloré en rouge comme capture d'écran suivante:


Articles plus relatifs:

  • Texte de pièce en gras lors de la concaténation de deux colonnes dans Excel
  • Dans la feuille de calcul Excel, après avoir concaténé deux valeurs de cellule avec des formules, vous constaterez peut-être que la partie du texte dans la cellule de formule combinée ne sera pas en gras. Cela peut parfois être ennuyeux, comment pouvez-vous faire une partie du texte en gras lors de la concaténation de deux colonnes dans Excel?
  • Concaténer les colonnes de cellules et conserver la couleur du texte dans Excel
  • Comme nous le savons tous, lors de la concaténation ou de la combinaison de colonnes de cellules en une seule colonne, le formatage des cellules (tel que la couleur de la police du texte, le formatage des nombres, etc.) sera perdu. Cet article, je vais vous présenter quelques astuces pour combiner les colonnes de cellules en une seule et conserver la couleur du texte aussi facilement que possible dans Excel.
  • Afficher un texte spécifique en fonction des valeurs d'une autre colonne
  • En supposant que j'ai une liste de nombres, maintenant, je veux afficher un texte spécifique dans une autre colonne en fonction de ces numéros de colonne. Par exemple, si le numéro de cellule est compris entre 1 et 100, je souhaite que le texte «Diminuer» s'affiche dans la cellule adjacente, si le nombre est compris entre 101 et 200, un texte «Stable» s'affiche et si le nombre est supérieur à 200 , un texte «Augmenter» s'affiche comme la capture d'écran suivante. Pour résoudre cette tâche dans Excel, les formules suivantes de cet article peuvent vous aider.
  • Somme des cellules avec du texte et des nombres dans Excel
  • Par exemple, j'ai une liste de valeurs contenant des chaînes numériques et textuelles, maintenant, je veux additionner uniquement les nombres basés sur le même texte, regardez la capture d'écran suivante. Normalement, vous ne pouvez pas additionner directement les valeurs de la liste avec une chaîne de texte, ici, je vais vous présenter quelques formules pour gérer cette tâche.

Meilleurs outils de productivité bureautique

🤖 Aide à l'IA Kutools: Révolutionner l'analyse des données en s'appuyant sur : Exécution intelligente   |  Générer du code  |  Créer des formules personnalisées  |  Analyser les données et générer des graphiques  |  Invoquer les fonctions Kutools...
Caractéristiques populaires: Rechercher, mettre en évidence ou identifier les doublons   |  Supprimer les lignes vides   |  Combinez des colonnes ou des cellules sans perdre de données   |   Tour sans formule 
Super recherche: VSearchup à critères multiples    VSearch à valeurs multiples  |   Recherche virtuelle sur plusieurs feuilles   |   Recherche floue ....
Liste déroulante avancée: Créez rapidement une liste déroulante   |  Liste déroulante dépendante   |  Liste déroulante à sélection multiple ....
Gestionnaire de colonnes: Ajouter un nombre spécifique de colonnes  |  Déplacer les colonnes  |  Basculer l'état de visibilité des colonnes masquées  |  Comparer les plages et les colonnes 
Caractéristiques en vedette: Mise au point de la grille   |  Voir Design   |   Grande barre de formule    Gestionnaire de classeurs et de feuilles   |  Centre de ressources (Texte automatique)   |  Sélecteur de date   |  Combiner des feuilles de travail   |  Crypter/déchiffrer les cellules    Envoyer des e-mails par liste   |  Super filtre   |   Filtre spécial (filtre gras/italique/barré...) ...
Les 15 meilleurs ensembles d'outils12 Texte Outils (Ajouter du texte, Supprimer les caractères, ...)   |   50+ Graphique Types (Diagramme de Gantt, ...)   |   40+ Pratique Formules (Calculer l'âge en fonction de l'anniversaire, ...)   |   19 Insertion Outils (Insérer le code QR, Insérer une image à partir du chemin, ...)   |   12 Conversion Outils (Nombres en mots, Conversion des devises, ...)   |   7 Fusionner et fractionner Outils (Lignes de combinaison avancées, Cellules divisés, ...)   |   ... et plus

Améliorez vos compétences Excel avec Kutools for Excel et faites l'expérience d'une efficacité comme jamais auparavant. Kutools for Excel offre plus de 300 fonctionnalités avancées pour augmenter la productivité et gagner du temps.  Cliquez ici pour obtenir la fonctionnalité dont vous avez le plus besoin...

Description


Office Tab apporte une interface à onglets à Office et facilite grandement votre travail

  • Activer l'édition et la lecture par onglets dans Word, Excel, PowerPoint, Publisher, Access, Visio et Project.
  • Ouvrez et créez plusieurs documents dans de nouveaux onglets de la même fenêtre, plutôt que dans de nouvelles fenêtres.
  • Augmente votre productivité de 50% et réduit des centaines de clics de souris chaque jour!
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