Accéder au contenu principal

Kutools for Office — Une Suite. Cinq Outils. Accomplissez Plus.

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

Author Xiaoyang Last modified

Dans Excel, il peut être facile pour nous de mettre en surbrillance les cellules en fonction d'un texte spécifique, mais ici, je souhaite mettre en évidence un texte spécifique à l'intérieur d'une cellule pour le faire ressortir sans pour autant surligner toute la cellule. Cela pourrait poser problème pour la plupart d'entre nous. Dans cet article, je vais parler de quelques astuces pour résoudre cette tâche dans Excel.


Mettre en évidence un ou plusieurs textes spécifiques dans plusieurs cellules avec du 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 le montrent les captures d'écran suivantes :

original data arrow right Highlight one specific text

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 où vous souhaitez mettre en évidence le texte spécifique, puis maintenez les touches ALT + F11 enfoncées pour ouvrir la fenêtre Microsoft Visual Basic for Applications.

2. Cliquez sur Insertion > Module, puis collez le code suivant dans la fenêtre Module.

Code VBA : Mettre en évidence une partie du 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. Appuyez ensuite sur la touche 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 évidence uniquement, voir capture d'écran :

enter the text to highlight

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

original data arrow right all text you specified are highlighted
Conseils: Si vous devez mettre en évidence plusieurs mots-clés dans les chaînes de texte, veuillez appliquer le code ci-dessous :
Code VBA : Mettre en évidence plusieurs mots-clés dans des 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 boîte qui apparaît, veuillez entrer les mots-clés que vous souhaitez mettre en évidence (séparez les mots par une virgule), voir capture d'écran :
enter the keywords to highlight

Et ensuite, cliquez sur le bouton OK, les mots spécifiés ont été mis en évidence immédiatement, voir captures d'écran :

original data arrow right the specified words are highlighted

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


Mettre en évidence un ou plusieurs textes spécifiques dans plusieurs cellules avec une fonctionnalité incroyable

Si vous n'êtes pas familier avec le code dans Excel, voici un outil simple - Kutools for Excel, avec sa fonctionnalité Marquer les mots-clés, vous pouvez mettre en évidence un ou plusieurs mots-clés spécifiques à la fois dans les cellules.

Kutools pour Excel propose plus de 300 fonctionnalités avancées pour simplifier les tâches complexes, augmentant ainsi la créativité et l'efficacité. Intégré à des capacités d'IA, Kutools automatise les tâches avec précision, rendant la gestion des données facile et sans effort. Informations détaillées sur Kutools pour Excel...  Essai gratuit...

Après avoir installé Kutools for Excel, veuillez procéder comme suit :

1. Cliquez sur Kutools > Texte > Marquer les mots-clés, voir capture d'écran :

click Mark Keyword feature of kutools

2. Dans la boîte de dialogue Marquer les mots-clés, effectuez les opérations suivantes :

  • Sélectionnez la plage de données que vous souhaitez utiliser dans la zone de texte Plage ;
  • Sélectionnez les cellules contenant les mots-clés que vous souhaitez mettre en évidence, vous pouvez également entrer manuellement les mots-clés (séparés par une virgule) dans la zone de texte Mots-clés.
  • Enfin, vous devez spécifier une couleur de police pour mettre en évidence les textes en cochant l'option Couleur de police des mots-clés. (Pour colorer toutes les cellules contenant les mots-clés, sélectionnez l'option Couleur du contenu des cellules).

set the options in the dialog box

3. Ensuite, cliquez sur le bouton Ok, tous les textes spécifiés ont été mis en évidence comme le montre la capture d'écran ci-dessous :

all specified texts are highlighted

Remarque : Cette fonctionnalité n'est pas sensible à la casse, si vous souhaitez mettre en évidence le texte en tenant compte de la casse, cochez Respecter la casse dans la boîte de dialogue Marquer les mots-clés.


Mettre en évidence un texte spécifique dans une cellule en fonction d'un autre texte avec du code VBA

Voici une autre situation, j'ai deux colonnes dont la première contient les chaînes de texte et la seconde 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 ligne.

Highlight specific text within a cell based on other text

1. Maintenez les touches ALT + F11 enfoncées pour ouvrir la fenêtre Microsoft Visual Basic for Applications.

2. Cliquez sur Insertion > Module, puis collez le code suivant dans la fenêtre Module.

Code VBA : Mettre en évidence une partie du 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 la touche F5 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 évidence et sur lequel baser votre action, voir capture d'écran :

select the data range which both contains the text string and specific text

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

all the corresponding text in the first column based on the specific text in the second column are colored red


Plus d'articles connexes :

  • Concaténer des 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, la mise en forme des cellules (comme la couleur de la police, le formatage numérique, etc.) sera perdue. Cet article vous présentera quelques astuces pour combiner les colonnes de cellules en une seule tout en conservant aussi facilement que possible la couleur du texte dans Excel.
  • Afficher un texte spécifique en fonction des valeurs d'une autre colonne
  • Supposons que j'aie une liste de nombres, et maintenant, je veux afficher un certain texte spécifique dans une autre colonne en fonction de ces nombres. Par exemple, si le nombre de la cellule est compris entre 1 et 100, je veux que le texte « Diminution » soit affiché dans la cellule adjacente, si le nombre est compris entre 101 et 200, un texte « Stable » est affiché, et si le nombre est supérieur à 200, un texte « Augmentation » est affiché comme le montre la capture d'écran suivante. Pour résoudre cette tâche dans Excel, les formules suivantes dans cet article peuvent vous aider.
  • Sommer des cellules contenant du texte et des nombres dans Excel
  • Par exemple, j'ai une liste de valeurs contenant des chaînes numériques et textuelles, et maintenant, je veux additionner uniquement les nombres en fonction du même texte, regardez la capture d'écran suivante. Normalement, vous ne pouvez pas sommer directement les valeurs dans la liste avec des chaînes de texte, ici, je vais vous présenter quelques formules pour traiter cette tâche.

Meilleurs outils de productivité pour Office

🤖 Kutools AI Aide : Révolutionnez l'analyse de données avec : Exécution intelligente | Générer du code | Créer des formules personnalisées | Analyser des données et générer des graphiques | Appeler les Fonctions améliorées de Kutools
Fonctionnalités populaires : Trouver, mettre en évidence ou marquer les doublons | Supprimer les lignes vides | Combinez les colonnes ou les cellules sans perte de données | Arrondir sans formule...
Super RECHERCHEV : Recherche multi-critères | Recherche multi-valeurs | Recherche multi-feuilles | Correspondance floue...
Liste déroulante avancée : Créer 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 des Colonnes | Alterner l’état de visibilité des Colonnes masquées | Comparer des plages & Colonnes...
Fonctionnalités phares : Mise au point de la grille | Affichage de conception | Barre de formule améliorée | Gestionnaire de Classeur & Feuille de calcul | Bibliothèque d’AutoTexte | Sélecteur de date | Merge Worksheets | Chiffrer/Déchiffrer les cellules | Envoyer un e-mail par liste | Super Filtre | Filtre spécial (filtrer les cellules avec une police en gras/italique/barré...)...
Top15 des ensembles d’outils :12 outils de texte (Ajouter du texte, Supprimer des caractères spécifiques, ...) |50+ Types de graphiques (Diagramme de Gantt, ...) |40+ Formules pratiques (Calculer l’âge en fonction de la date de naissance, ...) |19 outils d’insertion (Insérer un code QR, Insérer une image depuis le chemin, ...) |12 outils de conversion (Convertir en mots, Conversion de devises, ...) |7 outils de fusion & division (Fusion avancée des lignes, Diviser les cellules, ...) | ... et bien plus encore
Utilisez Kutools dans la langue de votre choix – disponible en Anglais, Espagnol, Allemand, Français, Chinois et plus de40 autres !

Améliorez vos compétences Excel avec Kutools pour Excel, et découvrez une efficacité incomparable. Kutools pour Excel propose plus de300 fonctionnalités avancées pour booster votre productivité et gagner du temps. Cliquez ici pour obtenir la fonctionnalité dont vous avez le plus besoin...


Office Tab apporte l’interface par onglets à Office, simplifiant considérablement votre travail.

  • Activez la modification 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é de50 % et réduit des centaines de clics de souris chaque jour !

Tous les modules complémentaires Kutools. Une seule installation

La suite Kutools for Office regroupe les modules complémentaires pour Excel, Word, Outlook & PowerPoint ainsi qu’Office Tab Pro, idéal pour les équipes travaillant sur plusieurs applications Office.

Excel Word Outlook Tabs PowerPoint
  • Suite tout-en-un — modules complémentaires Excel, Word, Outlook & PowerPoint + Office Tab Pro
  • Un installateur, une licence — installation en quelques minutes (compatible MSI)
  • Une synergie optimale — productivité accélérée sur l’ensemble des applications Office
  • Essai complet30 jours — sans inscription, ni carte bancaire
  • Meilleure valeur — économisez par rapport à l’achat d’add-ins individuels