une couleur par lettre

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 !

Margaux1301

XLDnaute Nouveau
Bonjour à tous,

Je formalise un RACI pour mon entreprise et j'aimerais mettre une couleur par lettre.
R (réalisateur) en Vert
A (approbateur) en rouge
C (consulté) en bleu
I (informé) en orange
J'ai une liste d'actions + une liste de noms et chacun doit connaitre son rôle. Le soucis est qu'il arrive qu'une personne ai plusieurs rôles, du coup, je ne peux pas faire de mise en forme conditionnelle.
Fichier ci joint.
Pourriez vous me venir en aide svp ?
 

Pièces jointes

Dernière édition:
Bonjour,

Dans le fichier ci-joint la macro commentée ainsi que des exemples d'utilisation, comme par exemple si vous changez une valeur de cellule dans la plage "RACI[[Olivier]:[Lucrecia]]") de votre tableau.
VB:
Sub ColorieRolesCellule(Cellule As Range)
'R (réalisateur) en Vert
'A (approbateur) en rouge
'C (consulté) en bleu
'I (informé) en orange
    '
    ' Variables de fonctionnement
    Dim txt As String, car As String
    Dim Couleur As Long
    Dim i As Integer
    '
    ' Texte de la cellule
    txt = UCase(Cellule(1, 1).Text)
    '
    ' S'il n'est pas vide
    If Trim(txt) <> "" Then
        '
        ' Le parcourir sur toute sa longueur
        For i = 1 To Len(txt)
            '
            ' obtention en majuscule du caractère parcouru
            car = UCase(Mid(txt, i, 1))
            '
            ' initialiser la couleur du caractère à -1 (aucune) par défaut
            ' IMPORTANT : doit être à -1 à chaque passage de boucle
            Couleur = -1
            '
            ' Suivant le caractère, choisir la couleur
            Select Case car
            Case "R": Couleur = RGB(0, 128, 0)  '   VERT
            Case "A": Couleur = RGB(255, 0, 0)  '   ROUGE
            Case "C": Couleur = RGB(0, 0, 255)  '   BLEU
            Case "I": Couleur = RGB(255, 140, 0)    '   ORANGE
            Case Else: Couleur = -1
            End Select
            '
            ' si la variable couleur a été modifiée alors colorer le caractère correspondant
            If Couleur > -1 Then Cellule.Characters(i, 1).Font.Color = Couleur
        Next i
    End If
End Sub



Cordialement
 

Pièces jointes

Bon
Bonjour,

Dans le fichier ci-joint la macro commentée ainsi que des exemples d'utilisation, comme par exemple si vous changez une valeur de cellule dans la plage "RACI[[Olivier]:[Lucrecia]]") de votre tableau.
VB:
Sub ColorieRolesCellule(Cellule As Range)
'R (réalisateur) en Vert
'A (approbateur) en rouge
'C (consulté) en bleu
'I (informé) en orange
    '
    ' Variables de fonctionnement
    Dim txt As String, car As String
    Dim Couleur As Long
    Dim i As Integer
    '
    ' Texte de la cellule
    txt = UCase(Cellule(1, 1).Text)
    '
    ' S'il n'est pas vide
    If Trim(txt) <> "" Then
        '
        ' Le parcourir sur toute sa longueur
        For i = 1 To Len(txt)
            '
            ' obtention en majuscule du caractère parcouru
            car = UCase(Mid(txt, i, 1))
            '
            ' initialiser la couleur du caractère à -1 (aucune) par défaut
            ' IMPORTANT : doit être à -1 à chaque passage de boucle
            Couleur = -1
            '
            ' Suivant le caractère, choisir la couleur
            Select Case car
            Case "R": Couleur = RGB(0, 128, 0)  '   VERT
            Case "A": Couleur = RGB(255, 0, 0)  '   ROUGE
            Case "C": Couleur = RGB(0, 0, 255)  '   BLEU
            Case "I": Couleur = RGB(255, 140, 0)    '   ORANGE
            Case Else: Couleur = -1
            End Select
            '
            ' si la variable couleur a été modifiée alors colorer le caractère correspondant
            If Couleur > -1 Then Cellule.Characters(i, 1).Font.Color = Couleur
        Next i
    End If
End Sub



Cordialement

Bonjour, merci pour toutes ces explications et exemples
 
- 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

Retour