Transformer un type de graphique dans Excel VBA

Ci-dessous, nous examinerons deux programmes dans Excel VBA. Un programme parcourt tous les graphiques sur une feuille et change chaque graphique en un graphique à secteurs. L’autre programme modifie certaines propriétés du premier graphique.

Placez un bouton de commande sur la feuille de calcul et ajoutez les lignes de code suivantes:

1. Tout d’abord, nous devons déclarer un objet ChartObject. L’objet ChartObject agit comme un conteneur pour un Objet de graphique. Nous appelons graphfeuil mais vous pouvez utiliser n’importe quel nom.

Dim graphfeuil As ChartObject

2. La collection ChartObjects contient tous les graphiques incorporés sur une seule feuille. Nous voulons boucler

à travers tous les graphiques sur la première feuille. Ajoutez la boucle For Each Next suivante.

For Each graphfeuil in Workbooks(1).ChartObjects

Next graphfeuil

3. L’objet Chart représente un graphique dans un classeur. Ajoutez la ligne de code suivante à la boucle For Each Next pour changer chaque graphique en graphique circulaire.

graphfeuil.Chart.ChartType = xlPie

Remarque: encore une fois, graphfeuil agit comme un conteneur pour l’objet Chart. Nous utilisons la propriété ChartType pour modifier le type de graphique. Nous utilisons la constante xlPie constante pour changer chaque graphique en graphique circulaire.

4. Résultat lorsque vous cliquez sur le bouton de commande sur la feuille:

Nous allons maintenant modifier certaines propriétés du premier graphique.

Placez un autre bouton de commande sur la feuille de calcul et ajoutez les lignes de code suivantes:

5. La collection ChartObjects contient tous les graphiques incorporés sur une seule feuille.

Ajoutez ce qui suit ligne de code pour activer le premier graphique:

Worksheets(1).ChartObjects(1).Activate

Nous pouvons maintenant faire référence à ce graphique comme ActiveChart.

6. Ajoutez la ligne de code suivante pour modifier le titre du graphique.

ActiveChart.ChartTitle.Text = "Rapport des ventes"

7. Ajoutez la ligne de code suivante pour déplacer la légende au bas du graphique:

ActiveChart.Legend.Position = xlBottom

8. Résultat lorsque vous cliquez sur le bouton de commande sur la feuille.

S’abonner
Notifier de
0 Commentaires
Inline Feedbacks
Voir tous les commentaires

Initiation à Excel

Fonctions Excel

Excel VBA

Macros VBA Utiles

Plus d'outils

Sur Facebook

Sur YouTube

0
Nous aimerions avoir votre avis, veuillez laisser un commentaire.x