Problem VBA graphique

Fixxup

XLDnaute Nouveau
Bonjour à tous !

Je viens vers vous car j'ai un problème avec VBA pour mettre en forme un joli graphique. En effet, voici déjà mon code :

Sub MakeChart()

Zone1 = "=Portefeuille!$C$19:$C$22"
Zone2 = "=Portefeuille!$B$19:$B$22"


Charts.Add
ActiveChart.ChartType = xl3DPieExploded
ActiveChart.SetSourceData Source:=Sheets("Portefeuille").Range("B19:C22")
ActiveChart.SeriesCollection(1).XValues = Zone1
ActiveChart.SeriesCollection(1).Values = Zone2
ActiveChart.SeriesCollection(1).Name = "=""Répartition de votre portefeuille"""


End Sub




Or, mon problème se situe au niveau des zones (plages) qui définissent les données du graphique. Avec ce code tout marche à merveille
SAUF que dans mon futur programme, ces zones seront variables, allant (toujours) de B19 à B... pour la zone1 et de C19 à C... pour la Zone 2.

Je pensais utiliser un intégrateur "i" et "Cells" pour lui dire d'aller de B19 jusqu'à Bi où i serait la première case vide (De même pour la colonne C). Mais cela ne marche pas :s

Donc pouvez vous m'aider sur ce problème de sélection de plages de données ?

Si ce n'est pas très clair (Ce que je n'espère pas :D), je peux bien entendu reformuler !

Merci a tous !!!

Fixxup
 
Dernière édition:

Cousinhub

XLDnaute Barbatruc
Inactif
Re : Problem VBA graphique

Bonsoir,
essaie avec ce code

Code:
Sub MakeChart()
Dim pl As Range, DerLig As Double

DerLig = Sheets("Portefeuille").[C65000].End(xlUp).Row
Set pl = Range("C19:C" & DerLig)
pl.Name = "Zone1"
Set pl = Range("B19:B" & DerLig)
pl.Name = "Zone2"

Charts.Add
ActiveChart.ChartType = xl3DPieExploded
ActiveChart.SetSourceData Source:=Sheets("Portefeuille").Range("B19:C" & DerLig)
ActiveChart.SeriesCollection(1).XValues = [Zone1]
ActiveChart.SeriesCollection(1).Values = [Zone2]
ActiveChart.SeriesCollection(1).Name = "=""Répartition de votre portefeuille"""

End Sub
 

Discussions similaires

Statistiques des forums

Discussions
314 095
Messages
2 105 823
Membres
109 437
dernier inscrit
lorenzeb