Rechercher/remplacer

  • Initiateur de la discussion Initiateur de la discussion Danilo
  • 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 !

D

Danilo

Guest
Bonjour,
C'est la première fois que je m'inscrit sur un forum parlant de logiciel comme excel.

Je travaille actuellement sur excel 2003 et j'ai un petit problème à régler.

Je voudrais remplacer une couleur d'un caractère, dans une cellule contenant plusieurs caractères, par une autre couleur pour ce même caractère, sans modifier la couleur des autres caractères contenus dans la même cellule.

Me suis je bien expliqué? Si oui, je continu en précisant que je veux le faire sur toutes mes cellules contenant ce dernier!

Y a t'il une solution?

Merci
 
Re : Rechercher/remplacer

bonjour danilo,

Voici la commande nécessaire. A toi de la manipuler à ta guise.
Et bienvenue sur ce magnifique forum 🙂.

Code:
Sub Couleur()
    ' mettre en rouge 2 caractères à partir du 5e caractère
    ' de la chaîne contenue dans la cellule active
    ActiveCell.Characters(5, 2).Font.Color = RGB(255, 0, 0)
End Sub
 
Re : Rechercher/remplacer

allez ! encore un petit coup de pouce :
Code:
Sub Couleur()
    Dim rngPlage    As Range
    Dim C           As Range
    Dim strCar      As String
    Dim intPos      As Integer
    
    strCar = InputBox("Entrer le caractère à colorer", "Caractère")
    
    If strCar <> "" Then
        ' définir la plage de cellules avec du contenu
        Set rngPlage = Range("A1:" & Cells.SpecialCells(xlCellTypeLastCell).Address).Cells
        
        ' parcourir chaque cellule de cette plage
        For Each C In rngPlage.Cells
            ' identifier la position de strCar dans la chaîne
            intPos = InStr(1, C.Value, strCar)
            If intPos Then
                ' si le caractère a été trouvé, le mettre en rouge 
                C.Characters(intPos, 1).Font.Color = RGB(255, 0, 0)
            End If
        Next
        
        ' libérer la mémoire des variables objet
        Set rngPlage = Nothing: Set C = Nothing
    End If
End Sub
A +,😀
 
Dernière édition:
- 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
Assurez vous de marquer un message comme solution pour une meilleure transparence.

Discussions similaires

Réponses
12
Affichages
452
Réponses
5
Affichages
665
Réponses
5
Affichages
665
W
Retour