Macro couleur cellules identiques

merguez59

XLDnaute Nouveau
Bonjour à tous.

J'ai une colonne, dans laquelle, je souhaite qu'il y ait une couleur cellule.

Dans mon fichier exemple. J'ai la collone A.
A1= A
A2= B
A3= C
.
.
.
A8= H
A9= A
A10= A
A11= B


Je veux qu'une macro (ou une mise en forme conditionnelle, mais je n'ai pas réussi à la faire) colore tous les A en vert, tous les B en bleu, tous les C en jaune... etc...
(en fait peu importe la couleur attribuée au caractère)

j'ai cru lire color.index quelque part.

Merci d'avance
 

Pièces jointes

  • Macro couleur cellules identiques.xlsx
    8.8 KB · Affichages: 34

DoubleZero

XLDnaute Barbatruc
Re : Macro couleur cellules identiques

Bonjour, merguez59, le Forum,

Une suggestion avec ce code placé dans le module de l'onglet concerné.

Code:
Option Explicit
Private Sub Worksheet_Change(ByVal c As Range)
    If Not Intersect(c, [a:a]) Is Nothing Then
        Select Case c
        Case "A"
            c.Interior.ColorIndex = 3
        Case "B"
            c.Interior.ColorIndex = 45
        Case "C"
            c.Interior.ColorIndex = 6
        Case "D"
            c.Interior.ColorIndex = 4
        Case "E"
            c.Interior.ColorIndex = 26
        Case Else
            c.Interior.ColorIndex = xlNone
            ''etc... etc...
        End Select
    End If
End Sub

A bientôt :)
 

Modeste geedee

XLDnaute Barbatruc
Re : Macro couleur cellules identiques

Bonsour®
par procedure événementielle (selection et/ou changement)
32 couleurs différentes (max 56)
basées sur le 1er caractère de la cellule ( pour argument=32, majuscule ou minuscule = couleur identique)

attention si couleur = très foncée prévoir changement couleur caractère.

Private Sub Worksheet_Change(ByVal Target As Range)
If Target.Column <> 1 Or Target.Cells.Count > 1 Then
Exit Sub
Else
If Target <> "" Then Target.Interior.ColorIndex = Asc(Target) Mod 32
End If
End Sub
Private Sub Worksheet_SelectionChange(ByVal Target As Range)
If Target.Column <> 1 Or Target.Cells.Count > 1 Then
Exit Sub
Else
If Target <> "" Then Target.Interior.ColorIndex = Asc(Target) Mod 32
End If
End Sub
 

merguez59

XLDnaute Nouveau
Re : Macro couleur cellules identiques

Bonjour merci pour vos réponses, mais lorsque je copie colle vos macro le "débeugeur" d'arrête à la première ligne. J'ai mal saisi?:

Sans titre.jpg

Merci d'avance!
 

Pièces jointes

  • Sans titre.jpg
    Sans titre.jpg
    35.2 KB · Affichages: 72
  • Sans titre.jpg
    Sans titre.jpg
    35.2 KB · Affichages: 68

Modeste geedee

XLDnaute Barbatruc
Re : Macro couleur cellules identiques

Bonsour®
:( il ne s'agit pas de macro à proprement parler ...
:rolleyes: mais de procédures événementielles à insérer dans un module de feuille et non dans un module standard ...
Capture.JPG
 

Pièces jointes

  • Capture.JPG
    Capture.JPG
    21.4 KB · Affichages: 45
  • Capture.JPG
    Capture.JPG
    21.4 KB · Affichages: 50
Dernière édition:

merguez59

XLDnaute Nouveau
Re : Macro couleur cellules identiques

Merci pour ta réponse,
Peux tu m'indiquer où inserer eci du coup? Quand je fais macro, créer un nouvelle macro et que je vais dans feuil1 comme tu l'indique sur la capture d'écran, ca ne fait rien...

Merci d'avance!
 

Modeste geedee

XLDnaute Barbatruc
Re : Macro couleur cellules identiques

Bonsour®
quand tu as ta feuille excel affichée
click droit sur l'onglet actif en bas
visualiser le code
coller le code fourni précédement
Capture.JPG
 

Pièces jointes

  • Capture.JPG
    Capture.JPG
    32.4 KB · Affichages: 54
  • Capture.JPG
    Capture.JPG
    32.4 KB · Affichages: 48

DoubleZero

XLDnaute Barbatruc

Pièces jointes

  • Private Sub.JPG
    Private Sub.JPG
    28.9 KB · Affichages: 91

merguez59

XLDnaute Nouveau
Re : Macro couleur cellules identiques

Merci pour voter aide.
Ca fonctionne. Par contre, je m'y prends peut-être mal, mais pour "colorer" les cellules, je dois double cliquer sur chacune ou alors m'y placer faire F2 puis entré.

Comment "appliquer l'action" sur toute la plage? je n'ai pas trouvé l'info sur ton lien DoubleZero

merci d'avance,
 

DoubleZero

XLDnaute Barbatruc
Re : Macro couleur cellules identiques

Re-bonjour,

... Ca fonctionne. Par contre, je m'y prends peut-être mal, mais pour "colorer" les cellules, je dois double cliquer sur chacune ou alors m'y placer faire F2 puis entré...

:confused:

Avec les codes suggérés supra, nul besoin de clic double. La coloration intervient dès changement d'une valeur en colonne a.

... Comment "appliquer l'action" sur toute la plage? je n'ai pas trouvé l'info sur ton lien DoubleZero...

Les liens mentionnés en #8 sont uniquement destinés à savoir où et comment loger un code.

A bientôt :)
 

merguez59

XLDnaute Nouveau
Re : Macro couleur cellules identiques

Bonjour,
à nouveau, merci pour ton aide. Néanmoins, effectivement, en cas d'ajout d'une donnée dans une nouvelle cellule de la colonne, A, il y a bien automatiquement une couleur qui s'affiche.
Mais je souhaite que l'action de colorer les cellules, se fasse également et automatiquement pour celle déjà écrites.

de plus, j'aimerais que les couleurs trop foncées soient évitées (ou au pire le noir): afin que les cellules restent visible.

Je remarque également que le blanc est une "couleur", mais j'aimerais que cette couleur soit réservée au cellules vides de la colonne A

Merci d'avance
 

merguez59

XLDnaute Nouveau
Re : Macro couleur cellules identiques

Je me rends également compte qu'en voulant simplier ma demande avec un exemple "trop simpliste", le code que tu m'as indiqué ne prends en compte que la 1ere lettre de la cellule pour attribuer la couleur de la cellule.

Si en A1 j'ai ABO, il me met une couleur
Si en A2, j'ai APO il me met la même couleur, mais je ne veux pas que ce soit la même couleur. Je veux que ce soit exactement le caractère inscrit dans la cellule qui détermine la couleur.

merci beaucoup!
 

merguez59

XLDnaute Nouveau
Re : Macro couleur cellules identiques

Bonjour VBA

Merci pour ton message, néanmoins, je n'ai pas l'impression qu'avec une Mise en forme conditionnelle, ce soit possible: en tout cas, je n'ai pas réussi à attribuer une couleur différente à chaque, paire, triplet, quadruplet, etc.. de "doublon"

J'essaie de me ré-expliqer:

a1 = merguez ==> cellule bleu
a2= olive ===> cellule verte
a3= pizza ===> cellule jaune
a4 = pomme ==> cellule rouge
a5= merguez ==> cellule bleu
a6 = merguez ===> cellule bleu
a7 = merguez ===> cellule bleu
a8= olive ===> cellule verte
a9 = pomme ==> cellule rouge


Sachant que dans cette ex, il n'y a que 4 article, et donc 4 couleur, mais qu'en vrai, il y a bien plus d'article et donc de couleur.

Et que dans l'idéal je souhaite que les couleurs soient définies automatiquement (peu importe le choix de la couleur attribuée à l'article). En évitant les couleurs trop sombre (ou au moins le noir)

Merci d'avance!
 

Discussions similaires

Membres actuellement en ligne

Statistiques des forums

Discussions
312 206
Messages
2 086 207
Membres
103 157
dernier inscrit
youma