Comment créer un graphique dynamique dans Excel en utilisant VBA (avec des étapes faciles)

  • Partage Ça
Hugh West

Dans cet article, je vais vous montrer comment créer un graphique dynamique dans Excel en utilisant VBA .

Télécharger le cahier d'exercices

Téléchargez ce cahier d'exercices pour vous entraîner pendant que vous lisez cet article.

Graphique dynamique dans Excel.xlsm

5 étapes faciles pour créer un graphique dynamique en utilisant Excel VBA

Ici, nous avons une feuille de travail appelée Feuille 1 qui contient un tableau contenant les revenus et les bénéfices d'une entreprise depuis quelques années.

Notre objectif aujourd'hui est de générer un tableau dynamique à partir de ce tableau en utilisant Excel VBA .

⧪ Étape 1 : ouverture de la fenêtre Visual Basic

Appuyez sur ALT+F11 sur votre clavier pour ouvrir le Visual Basic fenêtre.

⧪ Étape 2 : Insertion d'un nouveau module

Allez à la Insérer> ; Module dans la barre d'outils. Cliquez sur Module Un nouveau module appelé Module1 sera inséré.

⧪ Étape 3 : Mise en place du code VBA

C'est l'étape la plus importante. Mettez les éléments suivants VBA Code dans le module.

⧭ Code VBA :

 Sub Create_Dynamic_Chart() Application.ScreenUpdating = False With ActiveSheet.Shapes(Application.Caller).Fill.ForeColor If .Brightness = 0 Then .Brightness = -0.150000006 Else .Brightness = 0 End If End With Dim Sequence() As String Desired_Shapes = Array("Rounded Rectangle 1", "Rounded Rectangle 2", "Rounded Rectangle 3") For i = LBound(Desired_Shapes) ToUBound(Desired_Shapes) With ActiveSheet.Shapes(Desired_Shapes(i)) If .Fill.ForeColor.Brightness = -0.150000006 Then Sequence(UBound(Sequence)) = .TextFrame2.TextRange.Characters.Text ReDim Preserve Sequence(UBound(Series) + 1) End If End With Next i If UBound(Sequence)> ; 0 Then ReDim Preserve Sequence(UBound(Sequence) - 1)Worksheets("Sheet1").ListObjects("Table1").Range.AutoFilter Field:=1 Worksheets("Sheet1").ListObjects("Table1").Range.AutoFilter _ Field:=1, Criteria1:=Sequence, Operator:=xlFilterValues Application.ScreenUpdating = True End Sub 

⧪ Étape 4 : Enregistrement du classeur au format XLSM

Ensuite, retournez dans le classeur et enregistrez-le en tant que Classeur Excel compatible avec les macros .

⧪ Étape 5 : Sortie finale

Exécutez le code à partir du Run Sub / UserForm dans la barre d'outils.

Vous trouverez un graphique dynamique créé sur la base de la table en Feuille 2 de la feuille de travail.

Les choses à retenir

Un tableau est le meilleur moyen de créer un graphique dynamique. En effet, si vous ajoutez ou supprimez un élément du tableau, celui-ci s'ajuste automatiquement, et il en va de même pour le graphique. Mais il existe également d'autres moyens d'y parvenir, comme l'utilisation d'un élément de type Gamme nommée .

Hugh West est un formateur et analyste Excel très expérimenté avec plus de 10 ans d'expérience dans l'industrie. Il est titulaire d'un baccalauréat en comptabilité et finance et d'une maîtrise en administration des affaires. Hugh a une passion pour l'enseignement et a développé une approche pédagogique unique qui est facile à suivre et à comprendre. Sa connaissance approfondie d'Excel a aidé des milliers d'étudiants et de professionnels du monde entier à améliorer leurs compétences et à exceller dans leur carrière. Grâce à son blog, Hugh partage ses connaissances avec le monde, offrant des tutoriels Excel gratuits et une formation en ligne pour aider les particuliers et les entreprises à atteindre leur plein potentiel.