Twitter iPhone pliant OnePlus 11 PS5 Disney+ Orange Livebox Windows 11

Coloriser des graphes par ordre croissant

2 réponses
Avatar
jean-luc Guitard
bonjour,
sur plusieurs graphiques (Camembert), je colorise les secteurs de
différentes couleurs avec ce bout de programme,
voici mes données:
Existing Brand Modification Mandatory Value Engineering
Level1 32604000 25600 0
Level2 85888639 0 1661000
Level3 6455161,1 207801 4487244


For a = 1 To 3
Niveau = Sheets("Source").Cells(a + 1, 10).Value
If Niveau = "Level1" Then
graphe.Chart.SeriesCollection(1).Points(a).Format.Fill.ForeColor.RGB =
RGB(0, 241, 0)
If Niveau = "Level2" Then
graphe.Chart.SeriesCollection(1).Points(a).Format.Fill.ForeColor.RGB =
RGB(232, 0, 0)
If Niveau = "Level3" Then
graphe.Chart.SeriesCollection(1).Points(a).Format.Fill.ForeColor.RGB =
RGB(0, 204, 255)
Next a

je souhaiterai coloriser les secteurs toujours de la même façon du plus
grand au plus petit (rouge, vert , bleu)

merci si vous avez une solution et bonne et heureuse année à tous sans
oublier la santé......

2 réponses

Avatar
Daniel.C
Bonjour.
Essaie :

With graphe.Chart.SeriesCollection(1)
Var = .Values
cols = Array(RGB(0, 232, 0), RGB(241, 0, 204), RGB(0, 0, 255))
vals = Array(Application.Min(Var), Application.Large(Var, 2),
Application.Max(Var))
For i = 1 To 3
x = Application.Index(cols, Application.Match(Var(i), vals, 0))
.Points(i).Interior.Color = x
Next i
End With

Cordialement.
Daniel

bonjour,
sur plusieurs graphiques (Camembert), je colorise les secteurs de
différentes couleurs avec ce bout de programme,
voici mes données:
Existing Brand Modification Mandatory Value Engineering
Level1 32604000 25600 0
Level2 85888639 0 1661000
Level3 6455161,1 207801 4487244


For a = 1 To 3
Niveau = Sheets("Source").Cells(a + 1, 10).Value
If Niveau = "Level1" Then
graphe.Chart.SeriesCollection(1).Points(a).Format.Fill.ForeColor.RGB = RGB(0,
241, 0)
If Niveau = "Level2" Then
graphe.Chart.SeriesCollection(1).Points(a).Format.Fill.ForeColor.RGB =
RGB(232, 0, 0)
If Niveau = "Level3" Then
graphe.Chart.SeriesCollection(1).Points(a).Format.Fill.ForeColor.RGB = RGB(0,
204, 255)
Next a

je souhaiterai coloriser les secteurs toujours de la même façon du plus grand
au plus petit (rouge, vert , bleu)

merci si vous avez une solution et bonne et heureuse année à tous sans
oublier la santé......
Avatar
jean-luc Guitard
ci beaucoup à Daniel C
c'est ce que je cherchais, sans succès.........