Colorer une chaine de texte sous excel

Résolu
Bonjour,
Je traite actuellement des données textuelles sous Microsoft Excel.
Je possède une vingtaine de fichiers et je doit créer un document de synthèse.
Les données sont ainsi distribuée:
X lignes représentant les thèmes
3 colonnes représentant les niveaux de réponses
Chaque thème peut avoir de 0 à trois niveaux de réponses
Pour synthétiser le tout il me faut rassembler les différentes réponses dans 1 seule colonne
J'utilise donc la fonction concatener ainsi:
=CONCATENER(Ax;"/";Bx;"/";Cx)
J'aimerai savoir si il existe une fonction qui me permettrait, pour plus de lisibilité et pour ne pas tout avoir a faire à la main, de colorer chaque chaîne d'une couleur différente genre Ax en bleu, Bx en vert, Cx en rouge
Merci pour votre aide
Configuration: Windows XP
Firefox 3.0.13

1 réponse

  1. Contributeur
    Bonjour

    ci joint maquette à adapter
    https://www.cjoint.com/?iArimJbumU

    et ses macros ci dessous en considérant que le nom des thèmes est en colonne 1 (A) et la mise en tricolore colonne 6 (F) en constante

    Const col As Byte = 6 'colonne de restitution
    
    Sub colorier(texto1, texto2, texto3, tricolore As Range)
    
    tricolore = texto1 & "/" & texto2 & "/" & texto3
    long1 = Len(texto1)
    long2 = Len(texto2)
    long3 = Len(texto3)
    
    With tricolore
        If long1 > 0 Then: .Characters(Start:=1, Length:=long1).Font.ColorIndex = 4
        If long2 > 0 Then: .Characters(Start:=long1 + 1, Length:=long2).Font.ColorIndex = 5
        .Characters(Start:=long1 + long2 + 3, Length:=long3).Font.ColorIndex = 3
    End With
    
    End Sub
    
    Sub test()
    Dim derlig As Long, lig As Long
    derlig = Range("A65536").End(xlUp).Row
    Columns(col).Clear
    Application.ScreenUpdating = False
    For lig = 2 To derlig
        colorier Cells(lig, 2), Cells(lig, 3), Cells(lig, 4), Cells(lig, col)
    Next
    Application.ScreenUpdating = True
    
    End Sub


    1
    1. Merci beaucoup ça fait bien plaisir
      J'avoue que ça va me sortir une belle épine du pied pour ma présentation de résultats
      0