Générer les diagrammes ou les graphiques dynamiques avec Excel VBA

De nombreux diagrammes sont conservés pendant des mois, voire des années, et sont continuellement développés. L’expansion des diagrammes est une tâche difficile, car d’une part, vous devez développer la série de données individuellement et d’autre part, vous devez faire attention à ne pas entrer de références de cellule incorrectes. Une solution Excel VBA a été créée pour cette tâche. Imaginez que vous marquez la zone de données qui doit être affichée dans un diagramme et que vous démarrez une macro qui développe dynamiquement le diagramme existant. Cette fonctionnalité rappelle fortement le schéma standard, dans lequel vous marquez également la zone de données puis la touche | F11 | à presser. Avec cette norme
l’inconvénient est que vous devez créer le diagramme encore et encore, puis effectuer manuellement tout autre formatage sur le diagramme. De plus, une nouvelle feuille de diagramme est insérée pour cette solution standard.

Donc, si vous voulez développer de manière flexible un diagramme existant et incorporé, la meilleure façon de développer des graphiques est de nommer la zone de données. Premièrement, cela élimine beaucoup de paperasse et deuxièmement, cela facilite la lecture de la macro.

Sub EtendreSerieDonnees()
Dim FeuilleCal As Worksheet
Dim s As String
s = ActiveSheet.Name
Set FeuilleCal = ActiveSheet
On Error Resume Next
ActiveWorkbook.Names("ZoneDiapositive").Delete
ActiveWorkbook.Names.Add _
Name:="ZoneDiapositive", RefersToR1C1:=Selection
FeuilleCal.ChartObjects(1).Select
ActiveChart.SetSourceData _
Source:=Sheets(s).Range("ZoneDiapositive")
End Sub

 

Commentaires:
 Définissez d’abord la variable FeuilleCal du type Worksheet et la variable s type String.

Enregistrez ensuite le nom de la table sur laquelle se trouve le diagramme intégré dans la variable s.

 Puisque vous souhaitez nommer la zone de données qui entre dans votre diagramme incorporé, supprimez tout nom existant à l’aide de la méthode Delete.

 Par mesure de sécurité, insérez l’instruction On Error devant la ligne avec la commande Delete. Cette instruction garantit que la macro ne se bloque pas si aucun nom n’a été attribué à la zone de données.

 À l’étape suivante, utilisez la méthode Add pour ajouter un nouveau nom qui doit contenir la zone de données du diagramme. En argument, transmettez le nom et la référence de cellule à laquelle le nom doit faire référence à la méthode Add.

 Dans l’argument RefersToR1C1, vous faites référence aux cellules actuellement sélectionnées, autrement dit, avant de démarrer la macro, vous devez marquer la zone de données à inclure dans le diagramme. Après avoir attribué le nom, sélectionnez le diagramme incorporé et utilisez la méthode SetSourceData.

Il prend l’argument Source. Il contient la zone qui contient les données source du diagramme. Vous remplissez cet argument avec le contenu de la variable s, qui contient le nom de la table et le nom précédemment attribué.
S’abonner
Notifier de
0 Commentaires
le plus ancien
le plus récent le plus populaire
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