ChartArea.Fill avec dégradé de plusieurs points

Le
Fdecourt
Bonjour à tous,

Je profite de ces tristes et pluvieuse, qui je l'espère ne vous déprime=
pas trop pour mettre en forme des graphiques sous Excel.

Je suis Excel 2007 (et je ne cherche aucune rétrocompatibilité avec des=
versions précédente)
Il ne me reste qu'un problème que je n'arrive pas à résoudre malgré=
de multiples recherches sur internet.
Je créé sans problème mon graphique :
Set myGraph = ActiveSheet.ChartObjects.Add(Left:=100, Width:=375,=
Top:=75, Height:=225)
With myGraph
.Name = monNom
.RoundedCorners = True
With .Chart.SeriesCollection.NewSeries
.Name = monTitre
.Values = ValuesRange
.XValues = XValuesRange
End With
.Chart.ChartType = xl3DPie
.Chart.Elevation = 30
End With

Je souhaite ensuite donner à ce graphique un certain fond dégradé, av=
ec 3 points de couleurs spécifique en RGB.
Manuellement l'information se trouve dans "Format de la zone Graphique" > R=
emplissage > Remplissage dégradé > Type Linéaire > Points de dégrad=
és.

Je souhaiterai avoir 3 points de dégradé avec les valeurs RGB suivantes=
:

. point 1 : 154, 181, 228
. point 2 : 194, 209, 237
. point 3 : 225, 232, 245

Or je ne trouve nul part ou ajouter ces points, ni comment les modifier, et=
encore moins leur appliquer un format RGB.

Merci pour votre coup de main.

Cordialement,

F.
Vidéos High-Tech et Jeu Vidéo
Téléchargements
Vos réponses Page 1 / 2
Gagnez chaque mois un abonnement Premium avec GNT : Inscrivez-vous !
Trier par : date / pertinence
Fdecourt
Le #24886942
ll faut lire

Je profite de ces tristes et pluvieuses journées, ... ;)
DanielCo
Le #24886932
Bonjour,
Les jours sont gris, pluvieux et tu as Excel 2007; trois raisons de se
suicider ;-)))
Pour les graphiques (entre autres), l'enregistreur de macros
n'enregistre rien. Je regarde ce qu'il peut faire avec Excel 2010.
Cordialement.
Daniel


Bonjour à tous,

Je profite de ces tristes et pluvieuse, qui je l'espère ne vous déprime pas
trop pour mettre en forme des graphiques sous Excel.

Je suis Excel 2007 (et je ne cherche aucune rétrocompatibilité avec des
versions précédente) Il ne me reste qu'un problème que je n'arrive pas à
résoudre malgré de multiples recherches sur internet. Je créé sans problème
mon graphique : Set myGraph = ActiveSheet.ChartObjects.Add(Left:0,
Width:75, Top:u, Height:"5) With myGraph
.Name = monNom
.RoundedCorners = True
With .Chart.SeriesCollection.NewSeries
.Name = monTitre
.Values = ValuesRange
.XValues = XValuesRange
End With
.Chart.ChartType = xl3DPie
.Chart.Elevation = 30
End With

Je souhaite ensuite donner à ce graphique un certain fond dégradé, avec 3
points de couleurs spécifique en RGB. Manuellement l'information se trouve
dans "Format de la zone Graphique" > Remplissage > Remplissage dégradé > Type
Linéaire > Points de dégradés.

Je souhaiterai avoir 3 points de dégradé avec les valeurs RGB suivantes :

. point 1 : 154, 181, 228
. point 2 : 194, 209, 237
. point 3 : 225, 232, 245

Or je ne trouve nul part ou ajouter ces points, ni comment les modifier, et
encore moins leur appliquer un format RGB.

Merci pour votre coup de main.

Cordialement,

F.
DanielCo
Le #24886912
Un point positif, sauf si, comme moi tu es retraité : on est vendredi !
De quoi éviter le passage à l'acte. Bon j'ai enregistré ça. J'ai laissé
la répétition des dernières lignes, tel que restitué par
l'enregistreur. Je doute qu'on en ait besoin :
A adapter (j'ai enregistré sur la zone de traçage) :

ActiveChart.PlotArea.Select
With Selection.Format.Fill
.Visible = msoTrue
.ForeColor.ObjectThemeColor = msoThemeColorAccent1
.ForeColor.TintAndShade = 0.3399999738
.ForeColor.Brightness = 0
.BackColor.ObjectThemeColor = msoThemeColorAccent1
.BackColor.TintAndShade = 0.7649999857
.BackColor.Brightness = 0
.TwoColorGradient msoGradientHorizontal, 1
End With
Selection.Format.Fill.Visible = msoTrue
Selection.Format.Fill.Visible = msoTrue
Selection.Format.Fill.Visible = msoTrue
Selection.Format.Fill.Visible = msoTrue
Selection.Format.Fill.Visible = msoTrue

Daniel


Bonjour à tous,

Je profite de ces tristes et pluvieuse, qui je l'espère ne vous déprime pas
trop pour mettre en forme des graphiques sous Excel.

Je suis Excel 2007 (et je ne cherche aucune rétrocompatibilité avec des
versions précédente) Il ne me reste qu'un problème que je n'arrive pas à
résoudre malgré de multiples recherches sur internet. Je créé sans problème
mon graphique : Set myGraph = ActiveSheet.ChartObjects.Add(Left:0,
Width:75, Top:u, Height:"5) With myGraph
.Name = monNom
.RoundedCorners = True
With .Chart.SeriesCollection.NewSeries
.Name = monTitre
.Values = ValuesRange
.XValues = XValuesRange
End With
.Chart.ChartType = xl3DPie
.Chart.Elevation = 30
End With

Je souhaite ensuite donner à ce graphique un certain fond dégradé, avec 3
points de couleurs spécifique en RGB. Manuellement l'information se trouve
dans "Format de la zone Graphique" > Remplissage > Remplissage dégradé > Type
Linéaire > Points de dégradés.

Je souhaiterai avoir 3 points de dégradé avec les valeurs RGB suivantes :

. point 1 : 154, 181, 228
. point 2 : 194, 209, 237
. point 3 : 225, 232, 245

Or je ne trouve nul part ou ajouter ces points, ni comment les modifier, et
encore moins leur appliquer un format RGB.

Merci pour votre coup de main.

Cordialement,

F.
Fdecourt
Le #24886892
Merci pour ta réponse.

Mais ce code (à adapter un peu pour le fond du graphique) ne permet pas d e spécifier 3 points de dégradé avec une couleur RGB. Il applique bie n un dégradé, mais avec les valeurs standards d'Excel !
DanielCo
Le #24886882
J'avais oublié. J'y retourne...


Merci pour ta réponse.

Mais ce code (à adapter un peu pour le fond du graphique) ne permet pas de
spécifier 3 points de dégradé avec une couleur RGB. Il applique bien un
dégradé, mais avec les valeurs standards d'Excel !
DanielCo
Le #24886872
Pas sûr d'y arriver, l'enregistreur a l'air aussi défaillant que celui
de XL2007 et l'aide en ligne renvoie (comme d'habitude) sur page
inexistante. Je cherche...
Daniel


Merci pour ta réponse.

Mais ce code (à adapter un peu pour le fond du graphique) ne permet pas de
spécifier 3 points de dégradé avec une couleur RGB. Il applique bien un
dégradé, mais avec les valeurs standards d'Excel !
DanielCo
Le #24886862
Plus je regarde et plus je me demande si c'est possible. Deux couleurs,
pas de problème, plus ?
Daniel


Merci pour ta réponse.

Mais ce code (à adapter un peu pour le fond du graphique) ne permet pas de
spécifier 3 points de dégradé avec une couleur RGB. Il applique bien un
dégradé, mais avec les valeurs standards d'Excel !
DanielCo
Le #24886812
J'ai posé la question dans la cour des grands. Je m'attends à une
réponse du genre "c'est inclus dans le XML, pas moyen".
Attendons.
Daniel


Plus je regarde et plus je me demande si c'est possible. Deux couleurs, pas
de problème, plus ?
Daniel


Merci pour ta réponse.

Mais ce code (à adapter un peu pour le fond du graphique) ne permet pas de
spécifier 3 points de dégradé avec une couleur RGB. Il applique bien un
dégradé, mais avec les valeurs standards d'Excel !
DanielCo
Le #24886672
Regarde le code suivant :

With Selection.Format.Fill
.Visible = msoTrue
.BackColor.Brightness = 0
.TwoColorGradient msoGradientHorizontal, 1
.GradientStops.Insert RGB(154, 181, 228), 0.25
.GradientStops.Insert RGB(197, 209, 237), 0.5
.GradientStops.Insert RGB(225, 232, 245), 0.75
'.GradientStops.Insert RGB(128, 0, 0), 0.75
End With

Daniel


Merci pour ta réponse.

Mais ce code (à adapter un peu pour le fond du graphique) ne permet pas de
spécifier 3 points de dégradé avec une couleur RGB. Il applique bien un
dégradé, mais avec les valeurs standards d'Excel !
Fdecourt
Le #24889142
Bonjour DanielCo,

Merci pour ta réponse, et désolé pour la mienne qui est un peu tardiv e.
C'est effectivement l'objet et la méthode recherchée.

Avec le code suivant (un peu adapté par rapport au tient qui concerne les shapes, et peut être à la version d'Excel. Le code ci-dessous fonction ne pour 2007) :

Set myGraph = ActiveSheet.ChartObjects.Add(Left:0, Width:75, Top :u, Height:"5)
With myGraph
With .Chart.ChartArea.Format.Fill
.TwoColorGradient msoGradientHorizontal, 1
.GradientStops.Insert RGB(154, 181, 228), 0.25
.GradientStops.Insert RGB(197, 209, 237), 0.5
.GradientStops.Insert RGB(225, 232, 245), 0.75
.GradientStops.Delete (1)
.GradientStops.Delete (2)
End With
End With

cela fonctionne parfaitement.

Je supprime à la fin les deux premiers points de dégradé, qui sont cr éés automatiquement à la création du graphique (je n'ai pas trouv é de méthode de mmodification de la couleur ou de la position).

Merci pour ton coup de main !

Cordialement,

F.
Publicité
Poster une réponse
Anonyme