Comment créer un diagramme circulaire dans VBA (avec exemple)
Vous pouvez utiliser la syntaxe de base suivante pour créer un diagramme circulaire dans Excel à l’aide de VBA :
Sub CreatePieChart()
Dim MyChart As ChartObject
'get input range from user
Set Rng = Application.InputBox(Prompt:="Select chart input range", Type:=8)
'create pie chart
Set MyChart = Worksheets("Sheet1").ChartObjects.Add(Left:=ActiveCell.Left, _
Width:=400, Top:=ActiveCell.Top, Height:=300)
MyChart.Chart.SetSourceData Source:=Rng
MyChart.Chart.ChartType = xlPie
End Sub
Cette macro particulière demandera à l’utilisateur une plage de saisie, puis générera automatiquement un diagramme circulaire en utilisant la plage de saisie et l’insérera dans la feuille appelée Feuille1 avec le coin supérieur gauche du graphique situé dans la cellule actuellement active.
L’exemple suivant montre comment utiliser cette macro dans la pratique.
Exemple : Comment créer un graphique à secteurs dans VBA
Supposons que nous ayons l’ensemble de données suivant dans Excel qui contient des informations sur les points marqués par divers joueurs de basket-ball :
Supposons que nous souhaitions utiliser VBA pour générer un diagramme circulaire à l’aide de cet ensemble de données.
Nous pouvons créer la macro suivante pour ce faire :
Sub CreatePieChart()
Dim MyChart As ChartObject
'get input range from user
Set Rng = Application.InputBox(Prompt:="Select chart input range", Type:=8)
'create pie chart
Set MyChart = Worksheets("Sheet1").ChartObjects.Add(Left:=ActiveCell.Left, _
Width:=400, Top:=ActiveCell.Top, Height:=300)
MyChart.Chart.SetSourceData Source:=Rng
MyChart.Chart.ChartType = xlPie
End Sub
Pour exécuter cette macro, nous pouvons cliquer sur l’onglet Développeur le long du ruban supérieur dans Excel, puis cliquer sur Macros .
Nous pouvons ensuite cliquer sur celui intitulé CreatePieChart puis cliquer sur Run :
Une fois que nous cliquons sur Exécuter , nous serons invités à saisir une plage de saisie pour notre graphique à barres :
Nous allons taper A1:B7 , puis appuyer sur OK .
Le diagramme circulaire suivant sera automatiquement créé et affiché avec le coin supérieur gauche du graphique situé dans la cellule actuellement active, qui se trouve être la cellule D2 :
Remarque : Vous pouvez modifier les valeurs des arguments Largeur et Hauteur dans la fonction ChartObjects.Add() pour ajuster respectivement la largeur et la hauteur du diagramme circulaire.
Ressources additionnelles
Les didacticiels suivants expliquent comment effectuer d’autres tâches courantes dans VBA :
Comment créer un graphique à barres dans VBA
Comment arrondir les valeurs dans VBA
Comment arrondir les valeurs dans VBA