[Résolu] Légende et SériesCollection graphiques

Alexcore

XLDnaute Nouveau
bonjour,

voici mon souci d'origine :
j'ai 2 graphes dans une feuille Excel, qui présentent les même données, formatées différemment. j'ai voulu indexer ces 2 graphes sur une légende commune: au final, lier les SeriesCollection avec leur élément de légende correspondant et réaffecter les couleurs. je n'ai pas trouvé comment faire ce lien entre une SerieCollection et sa légende, dans les propriétés du graphe...
si quelqu'un connait une technique, je suis bien preneur...
edit : je suis toujours preneur...

voici mon souci actuel :
je ne me laisse pas abattre, je crée donc ma propre légende, à base de Shapes colorées et de texte.
ok, ça fait le boulot. rosco, content. je peux désormais lier un élément de légende à sa SeriesCollection.
mon second graphe est de type anneau... je n'ai plus qu'une seule série de données, donc composée d'éléments points. une nouvelle fois, je n'arrive pas à lire leur 'nom'. je hurle et m'étrangle. de nouveau, si quelqu'un connait une méthode..

finalement, en utilisant les datalabels, avec le ShowCategoryName à True, j'ai quand même pu lire l'info que je cherchais.
et là, je m’aperçois qu'il faut que je fasse un Application.Calculate après l'application des datalabels, car les graphes sont dessinés avec le ScreenUpdating à False. sinon, le datalabel n'est pas 'relu'
et ça fait un gros clignotement à l'affichage.... c'est moche...
edit : l'info que je cherchais à lire, c'était les nom de 'category', tout simplement. problème de vocabulaire....:p

<code>
' graphe anneau
With ActiveChart.SeriesCollection(1)
.Name = "Activité du jour !"
.Values = plageVal
.XValues = plageX

' afficher datalabels, pour y relire leur 'noms'
.ApplyDataLabels ShowCategoryName:=True, ShowValue:=False

Application.ScreenUpdating = True ' ???
Application.Calculate ' et encore, ça marche pas à tout les coups.
Application.ScreenUpdating = False

For Each dl In .DataLabels ' souvent, ça ne rentre pas.
nb = nb + 1
tmp = RTrim(dl.Caption)
' colorer les segments points avec la couleur de ma légende .
.Points(nb).Format.Fill.ForeColor.RGB = GetColor(tmp)
Next
.DataLabels.Delete
End With
</code>

si vous avez des solutions ou une explication pour un de mes problèmes..
merci pour votre temps, et pour votre aide.
 
Dernière édition:

Misange

XLDnaute Barbatruc
Re : Légende et SériesCollection graphiques

Bonjour

Relis ton message en te mettant à la place de celui qui le lit et ne connait pas ton problème... tu comprendras mieux pourquoi dans la charte que tu as bien sur lue il est chaudement recommandé de joindre un PETIT classeur exemple qui illustre la question que tu poses et qui permette aux répondeurs de tester leur réponse. Joins dedans un exemple de ce que tu souhaites obtenir (éventuellement en bidouillant avec un petit dessin).
 

Discussions similaires


Haut Bas