Bonjour
L'idée, au final de mon code, est d'ajouter un carré de texte juste à gauche du label, à remplir suivant certaines conditions.
Pour cela, je fais une boucle sur des étiquettes (valeurs en % d'un diagramme) afin de connaître leur position dans le graphique, et de créer la zone de texte à côté de l'étiquette.
Sur certains graphiques, ca marche nickel, sur d'autres, ca renvoie parfois une valeur énorme (si bien que que le "addshape" de mon code plante bien sûr). Le plus bizarre, c'est que si on revient en arrière en mode pas à pas, quelque fois, la valeur redevient "normale" et le code accepte de fonctionner.
Avez-vous une solution pour que Excel calcule correctement le ActiveChart.SeriesCollection(i).Points(à).DataLabel.Left de mon code?
Merci par avance,
Alexis
Extrait du code :
For i = 1 To ActiveChart.SeriesCollection.Count
For à = 1 To ActiveChart.SeriesCollection(i).Points.Count
gauche=ActiveChart.SeriesCollection(i).Points(à).DataLabel.Left +10
taupe=ActiveChart.SeriesCollection(i).Points(à).DataLabel.Top
ActiveChart.Shapes.AddShape(msoTextOrientationHorizontal, gauche, taupe, 20, 20).Select
next à
next i
L'idée, au final de mon code, est d'ajouter un carré de texte juste à gauche du label, à remplir suivant certaines conditions.
Pour cela, je fais une boucle sur des étiquettes (valeurs en % d'un diagramme) afin de connaître leur position dans le graphique, et de créer la zone de texte à côté de l'étiquette.
Sur certains graphiques, ca marche nickel, sur d'autres, ca renvoie parfois une valeur énorme (si bien que que le "addshape" de mon code plante bien sûr). Le plus bizarre, c'est que si on revient en arrière en mode pas à pas, quelque fois, la valeur redevient "normale" et le code accepte de fonctionner.
Avez-vous une solution pour que Excel calcule correctement le ActiveChart.SeriesCollection(i).Points(à).DataLabel.Left de mon code?
Merci par avance,
Alexis
Extrait du code :
For i = 1 To ActiveChart.SeriesCollection.Count
For à = 1 To ActiveChart.SeriesCollection(i).Points.Count
gauche=ActiveChart.SeriesCollection(i).Points(à).DataLabel.Left +10
taupe=ActiveChart.SeriesCollection(i).Points(à).DataLabel.Top
ActiveChart.Shapes.AddShape(msoTextOrientationHorizontal, gauche, taupe, 20, 20).Select
next à
next i