Création
d'entreprise
Posez votre question Signaler

VBA Création de graphique dans une boucle [Résolu]

Currahee 17Messages postés 13 octobre 2005Date d'inscription - Dernière réponse le 8 juin 2006 à 14:53
Bonjour,

Je suis en train de travailler sur un programme dans lequel j'ai une boucle qui m'ecrit des séries de 100 chiffres dans une feuille excel.

Au premier tour de ma boucle, mes chiffres sont inscrits dans la première colonne de ma feuille (colonne A), au second tour de boucle mes nouveaux chiffres sont inscrits dans la colonne suivante (colonne B), etc...

Je veux, et c'est là mon problème, incorporer dans la boucle une création de graphique associée à chaque série de données:

ActiveChart.SetSourceData Source:=Sheets("Capital").Range("A1:A100"), PlotBy _
:=xlColumns

Mon PROBLEME: comment changer la source de données du graphique -> avoir un range dynamique qui au premier tour de boucle sera la première colonne, au second la deuxieme colonne etc..

J'ai essayé de remplacer la ligne de code précédente par:

ActiveChart.SetSourceData Source:=Sheets("Capital").Range(Cells(1,i):Cells(100,i)), PlotBy _
:=xlColumns

i étant mon compteur de colonne

Mais ça ne fonctionne pas... :-(

Merci d'avance pour vos réponses,
Lire la suite 

VBA Création de graphique dans une boucle »

2 réponses
Réponse
+1
moins plus
J'ai finalement trouvé la solution...

Je pense au vu de la soluce trouvée qu'il va falloir que je me familiarise avec la commande set que j'avais négligé jusque-là... :oops:

SOLUTION:

Dim Donnees As Range

Set Donnees = Worksheets("Capital").Range(Worksheets("Capital").Cells(1, i), Worksheets("Capital").Cells(100, i))

Charts.Add
ActiveChart.ChartType = xlXYScatterLines
ActiveChart.SetSourceData Donnees, PlotBy _
:=xlColumns
ActiveChart.Location Where:=xlLocationAsNewSheet, Name:=Equipe(i)

PS: Merci pour la réponse sur l'erreur de syntaxe, mais même avec une virgule à la place des 2 points, ça plante...
Ajouter un commentaire
Réponse
+0
moins plus
salut,

la syntaxe de Range() n'est pas bonne. Essaie ceci :
ActiveChart.SetSourceData Source:=Sheets("Capital").Range(Cells(1,i),Cells(100,i)), PlotBy:=xlColumns

Ajouter un commentaire
Ce document intitulé « VBA Création de graphique dans une boucle » issu de CommentCaMarche (www.commentcamarche.net) est mis à disposition sous les termes de la licence Creative Commons. Vous pouvez copier, modifier des copies de cette page, dans les conditions fixées par la licence, tant que cette note apparaît clairement.
Dossier à la une
Passage au tout numérique : quel coût pour les particuliers ?