Excel VBA: graphique avec donnees variables

mamax

XLDnaute Nouveau
Bonjour a tous!

Voila je débute sous VBA, et ça fait une bonne semaine que je bloque sur un problème de syntaxe. J'ai cherché dans des tutos et forums, mais je n'ai pas trouvé de réponse:confused:!

En fait je souhaite créer des graphiques (PieChart) sachant que:
* mes données sont en lignes et non en colonnes.
* ces lignes peuvent varier suivant le choix dans une listBox.
* ces lignes peuvent être choisies sur trois feuilles différentes suivant le choix dans une deuxième listBox.

ça commence a faire beaucoup, d'où les problèmes de syntaxe:D!

Voici le code que j'ai écrit:

**************************************************************

Private Sub PieChart_Click()

'Definition des variables

Dim NumPage As Integer
Dim NumLine As Integer

NumPage = ListBox1.ListIndex + 1
'le premier nom est a la ligne 10
NumLine = ListBox2.ListIndex + 10


'creation du PieChart

Dim chtOb As ChartObject
Set chtOb = Sheets("Summary").ChartObjects.Add(100, 100, 250, 175)
With chtOb.Chart
.ChartType = xlPie
.SeriesCollection.NewSeries
.SeriesCollection(1).XValues = Sheets(NumPage).Range("D1:J1")
.SeriesCollection(1).Values = Range(Cells(NumLine, 4), Cells(NumLine, 10))
.SeriesCollection(1).Name = Sheets(NumPage).Cells(NumLine, 1).Value
End With
End Sub

**************************************************************
Mes données se trouvent a la ligne: NumLine entre la colonne D et la colonne J, et la feuille a sélectionner se trouve sur le feuillet numéro: NumPage.

J'aimerais que les graphes que je créer se trouve sur un page résumé intitulé: Summary, d'où le "Sheets("Summary").ChartObjects.Add...". Pour l'instant je lance manuellement ma macro, et lorsque mon curseur reste sur la page Summary, les graphes apparaissent tout vide! alors que lorsque mon curseur est sur une des trois pages de données, les graphes apparaissent avec les données!

Enfin, je pense qu'il faut aussi qu'une fois un graphe est crée, je trouve un moyen de reinitialiser les .XValues et .Values car sinon j'ai toujours le meme graphe!

Voila, j'ai essaye de bien expliquer ma demarche, du coup le message est bien long:(

Merci a tous ceux qui pourront m'aider!
 

Catrice

XLDnaute Barbatruc
Re : Excel VBA: graphique avec donnees variables

Bonsoir,

Il faut modifier cette ligne :

.SeriesCollection(1).Values = Sheets(NumPage).Range(Sheets(NumPage).Cells(NumLine, 4), Sheets(NumPage).Cells(NumLine, 10))


Enfin, je pense qu'il faut aussi qu'une fois un graphe est crée, je trouve un moyen de reinitialiser les .XValues et .Values car sinon j'ai toujours le meme graphe!
Là pas compris ...
Ne serait-ca pas parce que les graphes sont les uns sur les autres ?...
 

mamax

XLDnaute Nouveau
Re : Excel VBA: graphique avec donnees variables

Merci Catrice!

C'est génial, ça fonctionne parfaitement!

Du coup mon deuxième problème de graphique identique a disparu !

Dire que je ne voulais embêter personne avec mon problème!

Merci encore!:eek:
 

Discussions similaires

Réponses
1
Affichages
194
Réponses
0
Affichages
175

Statistiques des forums

Discussions
312 412
Messages
2 088 196
Membres
103 763
dernier inscrit
p.michaux