Pb de graphique incompréhensible!!

kettou

XLDnaute Junior
Bonjour à tous,
je fais appel à vous et à vos connaissances excel plus developpé que la mienne.
j'ai une macro qui fonctionne normalement dans d'autre programme , que j'ai voulu m'en servir, mais ca bugg et je ne comprend pas pourquoi?
la macro met à jour des series de données d'un graphe ( en supprimant et ajoutant des series) (tout depend du nombre de sries qu'on a )


Worksheets("Evolution pack odyssiel").Activate

ActiveSheet.ChartObjects("Graphique 9").Activate
ActiveChart.ChartArea.Select

With ActiveSheet.ChartObjects("Graphique 9").Chart
NbSeries = .SeriesCollection.Count
For i = 1 To DerLigne2 - 1
If i > NbSeries Then .SeriesCollection.NewSeries
.SeriesCollection(i).XValues = Worksheets("Evolution pack odyssiel").Range("DE1:DE12")
.SeriesCollection(i).Name = Worksheets("Evolution pack odyssiel").Range("CB" & i + 1)
.SeriesCollection(i).Values = Worksheets("Evolution pack odyssiel").Range("CH" & i + 1 & ":" & Mid(Worksheets("Evolution pack odyssiel").Range("CW1").End(xlToLeft).Address, 1, 3) & i + 1)

Next
If NbSeries > DerLigne2 - 1 Then
For j = NbSeries To DerLigne2 Step -1
.SeriesCollection(j).Delete
Next
End If
End With

l'erreur methode delete echoué (alors que elle fonctionnait normalment dans d'autre programme)
merci d'avance pour vos réponse
cdt
 
Dernière édition:

ROGER2327

XLDnaute Barbatruc
Re : Pb de graphique incompréhensible!!

Bonjour kettou
Difficile de suivre ce qui se passe avec un code sans son support...
Toutefois, il me semble que la deuxième boucle
For j = NbSeries To DerLigne2 Step -1
.SeriesCollection(j).Delete
Next
tente de supprimer toutes les séries de données du graphique. Or, il me semble qu'un graphique doit comporter au moins une série de données. Mais peut être n'ai-je pas tout compris...​
Bon courage.
ROGER2327
 

kettou

XLDnaute Junior
Re : Pb de graphique incompréhensible!!

re,
la boucle:
For j = NbSeries To DerLigne2 Step -1
.SeriesCollection(j).Delete
Next

est sensé supprimer les series de données dans le cas ou le nombre de series de l'ancien graphe est supérieur au graphe actuelle, pour ne pas avoir des series vide .
n'hesite pas à me signaler pour d'autre information( j'éspere ke j'ai été assez clair)
a+
 

ROGER2327

XLDnaute Barbatruc
Re : Pb de graphique incompréhensible!!

Re...
re,
la boucle:
For j = NbSeries To DerLigne2 Step -1
.SeriesCollection(j).Delete
Next

est sensé supprimer les series de données dans le cas ou le nombre de series de l'ancien graphe est supérieur au graphe actuelle, pour ne pas avoir des series vide .
n'hesite pas à me signaler pour d'autre information( j'éspere ke j'ai été assez clair)
a+
Désolé de n'avoir pas compris...
Mon hypothèse est donc fausse et je n'en suis pas vraiment étonné : dans l'extrait de code que vous donnez, la valeur de DerLigne2 n'est jamais définie. C'est pourquoi je disais "... il me semble que la deuxième boucle...".
D'autres trouveront certainement une meilleure explication.​
Bonne journée...
ROGER2327
 

kettou

XLDnaute Junior
Re : Pb de graphique incompréhensible!!

Re...
Désolé de n'avoir pas compris...
Mon hypothèse est donc fausse et je n'en suis pas vraiment étonné : dans l'extrait de code que vous donnez, la valeur de DerLigne2 n'est jamais définie. C'est pourquoi je disais "... il me semble que la deuxième boucle...".
D'autres trouveront certainement une meilleure explication.
Bonne journée...
ROGER2327
re,
DerLigne2 correspond à la derniére de la série du nouveau graphe définie.
Cdt
 

Discussions similaires

Statistiques des forums

Discussions
312 305
Messages
2 087 078
Membres
103 455
dernier inscrit
saramachado