boucle dans un graphique

mounia

XLDnaute Nouveau
Bonjour,
J'ai un souci car je voudrais un grahique qui m'affiche plusieurs courbes superposées, mais le nombre de courb est une variable( d'où la boucle for) et d'autre part le nombre de valeurs pour chaque séries aussi dépend d'une variable.Voici mon code:

Charts.Add
ActiveChart.ChartType = xlLineMarkers
For k = 1 To nbformules
ActiveChart.SeriesCollection.NewSeries
ActiveChart.SeriesCollection(k).Values "=final[/COLOR]!R" & (2 + k) & "C3:R" & (2 + k) & "C" & (3 + compteur1(1))
(c'est à cette ligne que ça bug!)
ActiveChart.SeriesCollection(k).Name = "formule d'indexation" & k
ActiveChart.SeriesCollection(k).Values = "=final!R2C3:R12C" & (3 + compteur1(1))
ActiveChart.Location xlLocationAsNewSheet, "évolution"
next k
Et il me dit que la méthode values de la classe series a échoué.
J'ai essayé avec cette forme aussi:
'ActiveChart.SeriesCollection(k).Values = Worksheets("SAISIE").Range(Cells(2+k, 3), Cells(2+k, 3 + compteur1(0)))

si quelqu'un peut m'expliquer ce serait assez merveilleux.
 

mounia

XLDnaute Nouveau
Re : boucle dans un graphique

Ok, je vais essayer offste qui décale mes cellules d'une ligne, (je connaissais) pas .Mais surtout j'ai un nombre de données dans chaque séries qui varie cela démarre de la colonne 3 jusqu'à 3+compteur1(1) et ç la syntaxe bug.
 

mécano41

XLDnaute Accro
Re : boucle dans un graphique

Je ne vois pas à quoi correspond ce compteur puisque tu comptes les colonnes par "k=1 to NbFormules"

Si c'est le nombre de données, cela se fait tout seul ; s'il n'y a rien dans le bas de la colonne, EXCEL n'affiche rien. Par exemple : supprime les 3 derniers Y2 et les 5 derniers Y3 de mon tableau...

Mais je n'ai peut-être pas compris...

Cordialement
 

mounia

XLDnaute Nouveau
Re : boucle dans un graphique

Non ,c'était bien le nombres de données pour chaque séries.
Finalement je n'ai pas eu besoin de offset car avec sheets au lieu de worksheets ça marche:
ActiveChart.SeriesCollection(k).Values = Sheets("final").Range(Worksheets("final").Cells(2 + k, 3), Worksheets("final").Cells(2 + k, 3 + compteur1(1)))
en tout cas
merci ancore
 

Discussions similaires

Statistiques des forums

Discussions
312 493
Messages
2 088 956
Membres
103 990
dernier inscrit
lamiadebz