nous examinerons ci-dessous à deux programmes dans Excel VBA. Un programme boucle de toutes les cartes sur une feuille et change chaque graphique à un graphique circulaire.

L’autre programme modifie certaines propriétés de la première carte.

  1. Créer des graphiques (ou télécharger le fichier Excel).

Programming Charts in Excel VBA

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

  1. Tout d’abord, nous avons besoin de déclarer un objet ChartObject. L’objet ChartObject agit comme un conteneur pour un objet graphique. Nous appelons le CHT ChartObject mais vous pouvez utiliser un nom.

Dim cht As ChartObject
  1. La collection ChartObjects contient tous les graphiques incorporés sur une seule feuille. Nous voulons boucler à travers toutes les cartes sur la première feuille. Ajouter ce qui suit pour chaque boucle suivante.

For Each cht In Worksheets(1).ChartObjects

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

cht.Chart.ChartType = xlPie

Note: Encore une fois, cht agit comme un conteneur pour l’objet graphique. Nous utilisons la propriété ChartType changer le type de graphique. Nous utilisons la xlPie constante intégrée pour changer chaque graphique à un graphique circulaire.

  1. lorsque vous cliquez sur le bouton de commande sur la feuille:

Programming Charts Result

Maintenant, nous allons modifier certaines propriétés de la première carte.

Placez un autre bouton de commande

sur la feuille de calcul et ajoutez les lignes de code suivantes:

  1. La collection ChartObjects contient tous les graphiques incorporés sur une seule feuille. Ajoutez la ligne de code suivante pour activer le premier graphique:

Worksheets(1).ChartObjects(1).Activate

Nous pouvons maintenant se référer à ce tableau comme ActiveChart.

  1. Ajoutez la ligne de code suivante pour changer le titre du graphique.

ActiveChart.ChartTitle.Text = "Sales Report"
  1. Ajoutez la ligne de code suivante pour déplacer la légende au bas du tableau:

ActiveChart.Legend.Position = xlBottom
  1. lorsque vous cliquez sur le bouton de commande sur la feuille:

Programming Charts Result