Ceci est une page optimisée pour les mobiles. Cliquez sur ce texte pour afficher la vraie page.

Colorer les points d'un nuage selon critère

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

Vilain

XLDnaute Accro
Salut à tous,

Cela faisait un moment que j'étais pas venu vous embêter avec un souci sur mes nuages de points...
Mon graphique se compose comme suit :
en abscisse l'age
en ordonnée le salaire
Je souhaite que mes points soient colorés de manière différente selon le secteur (voir fichier joint).

J'ai essayé plein de choses mais je ne parviens pas à adapter correctement.
Quelqu'un pourrait me dépanner sur ce petit bout de code ?

Merci d'avance.

A plus
 

Pièces jointes

Re : Colorer les points d'un nuage selon critère

Bonjour Gillus, bonjour Efgé, 🙂

Peut-être un truc du genre

Code:
Sub ColorPoints()
Dim Pt As Object, i As Long
    i = 1
    With ActiveSheet.ChartObjects("Graphique 1").Chart
        For Each Pt In .SeriesCollection(1).Points
            i = i + 1
            With Pt
                Select Case Range("D" & i).Value
                    Case "a"
                        .MarkerBackgroundColorIndex = 3
                        .MarkerForegroundColorIndex = 3
                    Case "b"
                        .MarkerBackgroundColorIndex = 4
                        .MarkerForegroundColorIndex = 4
                    Case "c"
                        .MarkerBackgroundColorIndex = 5
                        .MarkerForegroundColorIndex = 5
                    Case "d"
                        .MarkerBackgroundColorIndex = 6
                        .MarkerForegroundColorIndex = 6
                    Case "e"
                        .MarkerBackgroundColorIndex = 7
                        .MarkerForegroundColorIndex = 7
                End Select
            End With
        Next Pt
    End With
End Sub
 
Re : Colorer les points d'un nuage selon critère

Salut toto et merci beaucoup, cela semble fonctionné.
J'ai un petit problème pour adapter, car ma base et mon graphique sont sur des onglets différents (la base est dans un onglet appelé "EmployeesDetails"). Je pense donc que c'est cette ligne qui pose problème mais je n'arrive pas à adapter :
Select Case Range("D" & i).Value

Merci d'avance.

A plus
 
Re : Colorer les points d'un nuage selon critère

Salut à tous,

Je me permet de faire remonter ce fil car je rencontre un petit souci. J'ai voulu choisir moi-même les couleurs à appliquer. J'ai alors trouver ce fil : https://www.excel-downloads.com/threads/numero-de-couleur-en-vba.103623/
Je remercie d'ailleurs les participants de ce fil qui ont fourni de beaux fichiers !
Mon code est les suivant :
Code:
Dim Pt As Object, i As Long
    i = 1
    With ActiveChart
        For Each Pt In .SeriesCollection(1).Points
            i = i + 1
            With Pt
                Select Case Sheets("BasePourAnalyse").Range("L" & i).Value
                    Case "a"
                        .MarkerBackgroundColorIndex = 6
                        .MarkerForegroundColorIndex = 6
                    Case "b"
                        .MarkerBackgroundColorIndex = 3
                        .MarkerForegroundColorIndex = 3
                    Case "c"
                        .MarkerBackgroundColorIndex = 13
                        .MarkerForegroundColorIndex = 13
                    Case "d"
                        .MarkerBackgroundColorIndex = 4
                        .MarkerForegroundColorIndex = 4
                    Case "e"
                        .MarkerBackgroundColorIndex = 8
                        .MarkerForegroundColorIndex = 8
                End Select
            End With
        Next Pt
    End With

Le problème c'est que je ne me retrouve pas avec les couleurs que j'ai choisi (par ex le jaune n'apparait pas) alors que cela fonctionne correctement avec le fichier que j'avais mis en exemple plus haut. Quelqu'un a une idée ?

A plus

Edit : si je met toutes les valeurs à 6 (jaune) les points ressortent tous...verts !
 
Dernière édition:
Re : Colorer les points d'un nuage selon critère

Bonjour Gillus,

Je n'ai pas d'Excel 2010 sous la main, mais j'ai déjà remarqué que la gestion des couleurs entre les versions <2007 et >=2007 est très différente (notamment des cellules vertes qui deviennent jaunes en fonction de la version)
Je ne maîtrise pas bien mais je pense que les couleurs de "ColorIndex" doivent dépendre d'un Thème choisi
Si tu ne t'en sort pas avec ces couleurs, tu pourrait peut-être essayer d'appliquer des couleurs en RVB avec la fonction RGB, à tester

Code:
.MarkerBackgroundColor = RGB(255,0,0)
.MarkerForegroundColor = RGB(255,0,0)
 
Re : Colorer les points d'un nuage selon critère

Salut toto,

Merci pour ces précisions, c'est exactement ce qui se passait.
Du coup, j'ai cherché un peu à l'aveugle et j'ai finis par tomber sur les couleurs souhaitées.

Merci pour ton aide.

A plus
 
Re : Colorer les points d'un nuage selon critère

Salut à tous,

J'aimerai un petit truc en plus.
Je souhaiterai que mes points soient "entourés de noir". Je sais que la solution se cache quelque part dans ce bout de code :
Code:
 With Selection.Format.Line
        .Visible = msoTrue
        .ForeColor.ObjectThemeColor = msoThemeColorText1
        .ForeColor.TintAndShade = 0
        .ForeColor.Brightness = 0
        .Transparency = 0
    End With
Ceci dit, je ne sais pas quelle ligne est la bonne et surtout, je ne sais pas comment l'inclure à mon code déjà existant.

Merci d'avance

A plus
 
Dernière édition:
Re : Colorer les points d'un nuage selon critère

Bonjour Gillus,

Peut-être

Code:
.MarkerBackgroundColor = RGB(0,0,0)

Edit : Oups, c'est plutôt

Code:
.MarkerforegroundColor = RGB(0,0,0)
 
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
Les cookies sont requis pour utiliser ce site. Vous devez les accepter pour continuer à utiliser le site. En savoir plus…