Problem VBA graphique

  • Initiateur de la discussion Initiateur de la discussion Fixxup
  • Date de début Date de début

Boostez vos compétences Excel avec notre communauté !

Rejoignez Excel Downloads, le rendez-vous des passionnés où l'entraide fait la force. Apprenez, échangez, progressez – et tout ça gratuitement ! 👉 Inscrivez-vous maintenant !

F

Fixxup

Guest
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 😀), je peux bien entendu reformuler !

Merci a tous !!!

Fixxup
 
Dernière modification par un modérateur:
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
 
Re : Problem VBA graphique

Ça marche impec, merci vraiment. En plus, je comprends ta ligne ta code, mais j'aurais jamais réussi à trouver tout seul 😛

Merci encore, que le ciel t'apporte bonheur, richesse et prospérité😀
 
- Navigue sans publicité
- Accède à Cléa, notre assistante IA experte Excel... et pas que...
- Profite de fonctionnalités exclusives
Ton soutien permet à Excel Downloads de rester 100% gratuit et de continuer à rassembler les passionnés d'Excel.
Je deviens Supporter XLD
Assurez vous de marquer un message comme solution pour une meilleure transparence.

Discussions similaires

C
Réponses
23
Affichages
4 K
Charles78
C
D
Réponses
3
Affichages
2 K
demonsares
D
D
Réponses
1
Affichages
1 K
DELANNOY
D
M
Réponses
2
Affichages
3 K
M
P
Réponses
3
Affichages
1 K
phirexian
P
N
  • Question Question
Réponses
5
Affichages
3 K
P
Réponses
0
Affichages
713
p.pat27
P
D
Réponses
2
Affichages
2 K
drouch
D
N
Réponses
0
Affichages
2 K
N
M
Réponses
2
Affichages
2 K
matsam
M
M
Réponses
6
Affichages
1 K
M
S
  • Question Question
Réponses
3
Affichages
3 K
shakapouet
S
K
Réponses
1
Affichages
3 K
Retour