Comment colorer certains des mots en rouge

Bonsoir,
Ma question concerne les outils texte d’excel.
Je m’explique, j’ai un document excel de très grande taille. Je voudrais colorer certains des mots en rouge.
Je pensais utiliser la fonction chercher remplacer , mais cela colore toute la cellule qui contient le mot et pas uniquement le mot.
Le document est beaucoup trop imposant pour remplacer manuellement toutes les occurrences (il y en a plus de 5000)
Connaitriez vous la solution magique ?

Merci d’avance

Bonjour,
Il ne faut pas oublier qu’EXCEL est un tableur. Pour ce genre de travail, utilisez WORD de cette manière:

Dans Word, ouvrez le document pour lequel vous souhaitez surligner les occurrences d’un mot.

Dans l’onglet Accueil du ruban, déroulez la liste Couleur de surbrillance du texte et choisissez la couleur qui sera utilisée pour le surlignage.

Pressez simultanément les touches Ctrl et F.

Saisissez le mot ou la phrase à surligner dans tout le document.

Déroulez la liste Lecture du surlignage et sélectionnez l’option Tout surligner.

Cliquez sur Fermer.

Toutes les occurrences de vos mots sont surlignées dans le document.

Pour désactiver ce surlignage, pressez de nouveau les touches Ctrl et F. Déroulez la liste Lecture du surlignage et sélectionnez l’option Supprimer le surlignage.

Bonjour Marie_Gallais, toutes et tous,

Une proposition par Macro VBA dans le fichier joint:

  1. Sélectionner la plage de cellule concernée, ici “A1:A7”
  2. Appuis sur le bouton “InputBox”.
  3. Écrire le mot concerné dans la boite de dialogue “InputBox”.
  4. Cliquer sur OK.

Le ou les mots sélectionnés seront colorés en rouge et gras.
Recommencer l’opération si besoin pour d’autres mots.

Macro VBA:

Sub Colorer_Mots_et_Gras()

   Dim sTexte As String, sMot As String
   Dim lDebut As Long, lFin As Long
   Dim i As Integer, iNbCar As Integer
   Dim c As Range

   Application.ScreenUpdating = False

   sMot = InputBox("Mot recherché :")
   iNbCar = Len(sMot)

   For Each c In Selection
      sTexte = c.Value
      For i = 1 To Len(sTexte) - iNbCar
         lDebut = InStr(i, sTexte, sMot)
         If lDebut > 0 Then
            With c.Characters(Start:=lDebut, Length:=Len(sMot)).Font
               .ColorIndex = 3
               .Bold = True
            End With
         End If
      Next i
   Next c

   Application.ScreenUpdating = True

End Sub

Fichier exemple ICI==> Marie_Gallais V1.xlsm (19,5 Ko)

Cordialement.

Merci pour ce code mdo100.
Cela fonctionne bien à part que le test sur caractère respecte la casse (lettre majuscule en début de phrase par exemple).
Pourrais tu nous donner une version qui ne soit pas influencé par la casse STP ?
Merci

Bonjour

teste à l’appui change ceci :

lDebut = InStr(i, sTexte, sMot)

par

lDebut = InStr(i, UCase(sTexte), UCase(sMot))

Cela fonctionne quelque soit la casse du mot saisit ou celle dans les phrases

Testes et dis moi

Marie_Gallais V1.xlsm (17,5 Ko)