La ligne suivante me gène un peu !
1 2
| ActiveChart.SeriesCollection(i).Points(ActiveChart.SeriesCollection(i).Points.Count).ApplyDataLabels _
Type:=xlDataLabelsShowValue, AutoText:=True, LegendKey:=False |
normalement "ApplyDataLabels" s'applique à une serie or ici ton code cherche à l'appliquer à un point en particulier qui est le dernier de la série... c'est peut être pas ça le problème...
la ligne
ActiveChart.SeriesCollection(i).DataLabels.Delete
supprime bien tous les labels de la serie
et j'ai verifié la ligne
1 2
| ActiveChart.SeriesCollection(i).Points(ActiveChart.SeriesCollection(i).Points.Count).ApplyDataLabels _
Type:=xlDataLabelsShowValue, AutoText:=True, LegendKey:=False |
recrée tous les labels même si "ApplyDataLabels" n'est appliqué qu' a un point !!!
donc pour moi ".Points(ActiveChart.SeriesCollection(i).Points.Count)" ne sert à rien !!!
la bonne syntaxe devrait être :
ActiveChart.SeriesCollection(i).ApplyDataLabels Type:=xlDataLabelsShowValue, AutoText:=True, LegendKey:=False
voila essai déjà ça !
Édit : et d’ailleurs si certain type de graphique d'excel accepte qu'un seul point d'une série ai un label, alors il faudrait n'activer que le labelle de ce point ce qui expliquerait l'erreur
Réédite : bon c'est effectivement ce qui est fait dans ton code d'origine et j'ai testé cela fonctionne de mon coté donc je ne comprend toujours pas pour quoi ce la plante chez toi !
Partager