Réalisation d'un graphique
Bonjour à tous !
Je réalise actuellement un projet avec l'aide de VBA, pour ce projet il m'est demandé de réaliser un graphique en fonction de donnés écrite sur une page excel.
Après avoir regardé plusieurs tuto et autre forum je me retrouve bloqué pour réaliser la sélection des données.
voici mon code :
'----------------------Graphique-----------------------------------------------------------------------------------------------' Dim Legraph As Chart 'on integre Legraph, un graphique
Dim dr As Long'Insérer le titre du graphique
'Création du graphique
dr = Sheets("Feuil_test").Range("B100").End(xlUp).Row 'je regarde quel est la dernière ligne du tableau
Set Legraph = Sheets("Feuil_test").Shapes.AddChart.Chart 'Je crée le graphique
With Legraph 'propriétés du graphique
.SetSourceData Source = Sheets("Feuil_Test").Columns("A1;B" & dr) 'Je sélectionne les données dans la feuille test en colonne A et B
'Insérer les Titres du graphique'Titre du graphique
.HasTitle = True 'Activer le titre du graphique
.ChartTitle.Text = "Volume de la sphère en fonction du rayon"
'Axe X
.Axes(xlCategory, xlPrimary).HasTitle = True 'Activer le titre d'axe X
.Axes(xlCategory, xlPrimary).AxisTitle.Characters.Text = "Rayon (en cm)" 'j’inscris le titre de l'axe X dans le graphique
'Axe Y
.Axes(xlValue, xlPrimary).HasTitle = True 'Activer le titre d'axe Y .Axes(xlValue, xlPrimary)
.AxisTitle.Characters.Text = "Volume (en cm^3)" 'j’inscris le titre de l'axe Y dans le graphique
.ChartType = -4169 'xlXYScatter 'Je choisi le type de graphique, un nuage de points
End With
Au lancement du programme il me signale une erreur de ce type "Incompatibilité de type (Erreur 13)" sur cette ligne de code :
.SetSourceData Source = Sheets("Feuil_Test").Columns("A1; B" & dr) 'Je sélectionne les données dans la feuille test en colonne A et B
je ne comprend pas d’où viens l'erreur...
En vous remerciant par avance.
Bonne journée :)
Hello,
.Columns()Ne peut pas recevoir ce type de structure :
"A1:B500"Il peut recevoir :
.Columns("A:B")Test comme ci-dessus et dis moi.
R@g
bonjour,
ou si tu veux limiter la plage aux valeurs effectives
.SetSourceData Source = Sheets("Feuil_Test").range("A1:B" & dr) 'Je sélectionne les données dans la feuille test en colonne A et B