Taille et couleurs standard dans une légende d'un graphique excel
la_bavaroise
Messages postés24Date d'inscriptionmercredi 14 septembre 2005StatutMembreDernière intervention22 novembre 2005
-
22 nov. 2005 à 10:00
Suspens91
Messages postés2Date d'inscriptiondimanche 26 juin 2005StatutMembreDernière intervention10 juillet 2006
-
10 juil. 2006 à 16:30
Bonjour à tous,
en fait je me demandais si en VBA (ou tout simplement dans les options d'Excel), on pouvait attribuer une couleurs précise ainsi qu'un trait de ligne plus large que le standard à des noms bien précis de la légende. Je m'explique:
Par exemple, j'ai construit un tableau croisé dynamique qui prend en compte le changement de taux d'intéret de differentes banques en fonction du nombre de mois sur lequel s'etalle un emprunt. A partir de ce tableau, j'en ai donc fait un graphique et peux donc comparer les taux des differentes banques en fonction des mois à courir (12, 18, 24 etc).
Le probléme est qu'à chaque réactualisation du graphique, mes couleurs changent (par exemple pour la banque "Postbank", je veux tjs un trait jaune) et le trait redevient fin (alors que j'en veux un épais)
Auriez-vous une idée?
Je vous remercie d'avance,
la bavaroise.
A voir également:
Taille et couleurs standard dans une légende d'un graphique excel
Suspens91
Messages postés2Date d'inscriptiondimanche 26 juin 2005StatutMembreDernière intervention10 juillet 2006 10 juil. 2006 à 14:02
Bin j'ai le même probleme que toi!
j'ai trouvé une solution pour les graphiques en baton ... ne marche pas sur les graphiques secteur (et je cherche bien sur une solution)
Dans mon exemple la macro vérifie si il existe bien un baton dons le nom d'étiquette est 0
Si ce baton existe il lui met la couleur 3
Dans le fichier que j'utilise il n'y a que 4 valeurs possible donc je teste chaqu'une de ces valeur et leurs attibue une couleur prédéfinie
==================================================
Sub Lansetestehitorique()
Application.Run "Test0"
'ici je demande de lanser Test0'
end sub
===================================================
Sub Test0()
On Error GoTo fin0
'Teste le baton'
If ActiveChart.SeriesCollection("0").Select = True Then
'si présence baton selectionne la série et color en rouge'
ActiveChart.SeriesCollection("0").Select
With Selection.Interior
.ColorIndex = 3
End With
End If
fin0:
End Sub
Je susi debutant alors je pense pas que ca resolve ton probleme mais c'est peut ête une piste
PS: j'arrive pas a condionner la couleur de mes secteurs dans un graphique a secteur suivant l'étiquette de donner ... aider moi
Suspens91
Messages postés2Date d'inscriptiondimanche 26 juin 2005StatutMembreDernière intervention10 juillet 2006 10 juil. 2006 à 16:30
Bon j'ai ca comme solution ... j'ai mis du temps à la trouver et je pense qu'il y a surement mieux
0,1,2,3 étant mes etiquettes
Sub circulaire()
'je fai une boucle (4 fois) pour tester toutes les possibilités en commencant à 1 la serie 0 n existe pas'
For I = 1 To 5 Step 1
'En cas d erreur je sort de ma boucle ou si il n'y a plus que l'option (vide)
On Error GoTo fine
'J'affiche les Etiquettes'
ActiveChart.ApplyDataLabels Type:=xlDataLabelsShowLabel, LegendKey:=False, _
HasLeaderLines:=True
'Je selectionne l'étiquette de la 1 ere série puis la 2 eme puis la 3 eme ... grace a i '
ActiveChart.SeriesCollection(1).DataLabels.Select
ActiveChart.SeriesCollection(1).Points(I).DataLabel.Select
'Je teste l'étiquette ex: si étiquette = 1 alors colorie en orange"
If Selection.Text = 0 Then
ActiveChart.SeriesCollection(1).Points(I).Select
With Selection.Interior
.ColorIndex = 3
.Pattern = xlSolid
End With
GoTo fin
End If
If Selection.Text = 1 Then
ActiveChart.SeriesCollection(1).Points(I).Select
With Selection.Interior
.ColorIndex = 46
.Pattern = xlSolid
End With
GoTo fin
End If
If Selection.Text = 2 Then
ActiveChart.SeriesCollection(1).Points(I).Select
With Selection.Interior
.ColorIndex = 6
.Pattern = xlSolid
End With
GoTo fin
End If
If Selection.Text = 3 Then
ActiveChart.SeriesCollection(1).Points(I).Select
With Selection.Interior
.ColorIndex = 4
.Pattern = xlSolid
End With
GoTo fin
End If
Voila j'ai deux solutions pour deux types de graphique different... (je pense que la solution 2 est adaptable a tous les type de graphique car elle permet de passer par les Etiquettes)
PS: Je suis fiere de moi alors ne me dite pas que c'est super nul ... je debute (10h de boulot juste pour les deux solutions)