XL 2016 Colorier une lettre ou un mot entier recherché.

  • Initiateur de la discussion Initiateur de la discussion cd95
  • Date de début Date de début

Boostez vos compétences Excel avec notre communauté !

Rejoignez Excel Downloads, le rendez-vous des passionnés où l'entraide fait la force. Apprenez, échangez, progressez – et tout ça gratuitement ! 👉 Inscrivez-vous maintenant !

Bonsoir le forum
Bonsoir cd
Avant toute chose, je t'invite ainsi que nombre de membres de ce forum, à prendre connaissance de la charte XLD dès lors que tu désires poster.
CharteXLD.gif

Une approche de ton problème :
VB:
Sub RechercherMot()
Dim mot As String
mot = InputBox("Mot à rechercher ?")
If mot = "" Then Exit Sub
For Each c In Range("A1:E9")    'A adapter
If c.Value Like mot Then
c.Interior.ColorIndex = 3
c.MergeCells = False
End If
Next
End Sub

Bonne soirée à toutes & à tous ET prenez bien soin de vous et des vôtres avec la pandémie qui n'a pas fini de faire parler d'elle.
Ma signature.gif
 
Bonsoir le forum
Bonsoir cd
Avant toute chose, je t'invite ainsi que nombre de membres de ce forum, à prendre connaissance de la charte XLD dès lors que tu désires poster.
Regarde la pièce jointe 1058386
Une approche de ton problème :
VB:
Sub RechercherMot()
Dim mot As String
mot = InputBox("Mot à rechercher ?")
If mot = "" Then Exit Sub
For Each c In Range("A1:E9")    'A adapter
If c.Value Like mot Then
c.Interior.ColorIndex = 3
c.MergeCells = False
End If
Next
End Sub

Bonne soirée à toutes & à tous ET prenez bien soin de vous et des vôtres avec la pandémie qui n'a pas fini de faire parler d'elle.
Regarde la pièce jointe 1058387
Bonsoir Eric C,

Merci beaucoup pour ta solution, le code me semble logique mais malheureusement ne fonctionne pas.
 

Pièces jointes

Bonsoir à tous,

Une macro générale pour colorier un mot dans une plage:
VB:
Sub colorier(xplage As Range, xmot)
Dim xcell As Range, x, deb&, mot
    Application.ScreenUpdating = False
    xplage.Font.ColorIndex = xlColorIndexAutomatic
    For Each xcell In xplage
        mot = Trim(xmot) & " "
        deb = 1
        x = xcell.Value & " "
        If Left(xcell, Len(mot)) = mot Then
            xcell.Characters(1, Len(mot) - 1).Font.Color = RGB(255, 0, 0)
            deb = Len(mot) + 1
        End If
        mot = " " & mot
        Do
            deb = InStr(deb, x, mot)
            If deb > 0 Then
                xcell.Characters(deb + 1, Len(mot) - 2).Font.Color = RGB(255, 0, 0)
                deb = deb + Len(mot)
            Else
                Exit Do
            End If
        Loop
    Next xcell
End Sub

  • xplage est la plage de cellules à traiter
  • xmot est le mot à rechercher (une cellule, une variable ou une constante)


Voir son utilisation dans dans la macro test associée au bouton Hop!


edit :
bonjour @Eric C
 

Pièces jointes

Dernière édition:
Bonsoir à tous,

Une macro générale pour colorier un mot dans une plage:
VB:
Sub colorier(xplage As Range, xmot)
Dim xcell As Range, x, deb&, mot
    Application.ScreenUpdating = False
    xplage.Font.ColorIndex = xlColorIndexAutomatic
    For Each xcell In xplage
        mot = Trim(xmot) & " "
        deb = 1
        x = xcell.Value & " "
        If Left(xcell, Len(mot)) = mot Then
            xcell.Characters(1, Len(mot) - 1).Font.Color = RGB(255, 0, 0)
            deb = Len(mot) + 1
        End If
        mot = " " & mot
        Do
            deb = InStr(deb, x, mot)
            If deb > 0 Then
                xcell.Characters(deb + 1, Len(mot) - 2).Font.Color = RGB(255, 0, 0)
                deb = deb + Len(mot)
            Else
                Exit Do
            End If
        Loop
    Next xcell
End Sub

  • xplage est la plage de cellules à traiter
  • xmot est le mot à rechercher (une cellule, une variable ou une constante)


Voir son utilisation dans dans la macro test associée au bouton Hop!


edit :
bonjour @Eric C
Bonsoir,
Merci beaucoup c'est vraiment ce que je voulais
 
Bonsoir,
Merci beaucoup c'est vraiment ce que je voulais
Bonjour,
Dans la discussion XL 2019: Colorier un mot dans une phrase vous avez poster un code qui m'intéresse vraiment beaucoup mais je n'arrive pas à le modifier pour que je puisse chercher toute une phrase et non pas qu'un seul mot et dans un InputBox au lieu d'une cellule. (voici une partie de votre code en-dessous: Pourrier-vous m'aider. Merci d'avance)
 

Pièces jointes

- Navigue sans publicité
- Accède à Cléa, notre assistante IA experte Excel... et pas que...
- Profite de fonctionnalités exclusives
Ton soutien permet à Excel Downloads de rester 100% gratuit et de continuer à rassembler les passionnés d'Excel.
Je deviens Supporter XLD

Discussions similaires

Réponses
12
Affichages
287
Réponses
3
Affichages
128
Réponses
12
Affichages
214
  • Question Question
XL pour MAC mise en forme
Réponses
2
Affichages
545
Réponses
2
Affichages
389
Retour