VBA-Diagramme

Excel VBA-Diagramme

Diagramme können in VBA als Objekte bezeichnet werden. Ähnlich wie im Arbeitsblatt können wir auch Diagramme in VBA auf dieselbe Weise einfügen. Zuerst wählen wir die Daten und den Diagrammtyp aus, die wir für unsere Daten benötigen. Jetzt gibt es zwei verschiedene Arten von Diagrammen, die wir bereitstellen ist das eingebettete Diagramm, in dem sich das Diagramm im selben Datenblatt befindet, und ein anderes Diagramm wird als Diagrammblatt bezeichnet, in dem sich das Diagramm im separaten Datenblatt befindet.

Bei der Datenanalyse sind visuelle Effekte die wichtigsten Leistungsindikatoren der Person, die die Analyse durchgeführt hat. Visuals sind die bestmögliche Art und Weise, wie ein Analyst seine Botschaft vermitteln kann. Da wir alle Excel-Benutzer sind, verbringen wir normalerweise viel Zeit damit, die Daten zu analysieren und Schlussfolgerungen mit Zahlen und Diagrammen zu ziehen. Das Erstellen eines Diagramms ist die Kunst, die Sie beherrschen müssen, und ich hoffe, Sie haben gute Kenntnisse im Erstellen von Diagrammen mit Excel. In diesem Artikel zeigen wir Ihnen, wie Sie Diagramme mit VBA-Codierung erstellen.

Wie füge ich Diagramme mit VBA-Code in Excel hinzu?

Sie können diese VBA Charts Excel-Vorlage hier herunterladen - VBA Charts Excel-Vorlage

# 1 - Erstellen Sie ein Diagramm mit VBA-Codierung

Um ein Diagramm zu erstellen, sollten wir numerische Daten haben. In diesem Beispiel werde ich die folgenden Beispieldaten verwenden.

Ok, lass uns zum VBA-Editor springen.

Schritt 1: Unterprozedur starten.

Code:

 Sub Charts_Example1 () End Sub 

Schritt 2: Definieren Sie die Variable als Diagramm.

Code:

 Sub Charts_Example1 () Dim MyChart As Chart End Sub 

Schritt 3: Da das Diagramm eine Objektvariable ist, müssen wir es festlegen .

Code:

 Sub Charts_Example1 () MyChart als Diagramm dimmen Set MyChart = Charts.Add End Sub 

Mit dem obigen Code wird ein neues Blatt als Diagrammblatt und nicht als Arbeitsblatt hinzugefügt.

Schritt 4: Jetzt müssen wir das Diagramm entwerfen. Mit Statement öffnen.

Code:

 Sub Charts_Example1 () MyChart als Diagramm dimmen Set MyChart = Charts.Add With MyChart End With End Sub 

Schritt 5: Das erste,  was wir mit dem Diagramm tun müssen, ist, den Quellbereich durch Auswahl der Methode Quelldaten festlegen “ festzulegen .

Code:

 Sub Charts_Example1 () MyChart als Diagramm dimmen Set MyChart = Charts.Add With MyChart .SetSourceData End With End Sub 

Schritt 6: Hier müssen wir den Quellbereich erwähnen. In diesem Fall befindet sich mein Quellbereich in dem Blatt mit dem Namen "Sheet1" und der Bereich ist "A1 bis B7".

Code:

 Sub Charts_Example1 () MyChart als Diagramm dimmen Set MyChart = Charts.Add With MyChart .SetSourceData Sheets ("Sheet1"). Range ("A1: B7") End With End Sub 

Schritt 7: Als nächstes müssen wir die Art des Diagramms auswählen, das wir erstellen möchten. Dazu müssen wir die Eigenschaft Diagrammtyp auswählen .

Code:

 Sub Charts_Example1 () MyChart als Diagramm dimmen Set MyChart = Charts.Add With MyChart .SetSourceData Sheets ("Sheet1"). Range ("A1: B7") .ChartType = End With End Sub 

Schritt 8: Hier haben wir eine Vielzahl von Diagrammen. Ich werde das Diagramm " xlColumnClustered " auswählen .

Code:

 Sub Charts_Example1 () MyChart als Diagramm dimmen Set MyChart = Charts.Add With MyChart .SetSourceData Sheets ("Sheet1"). Range ("A1: B7") .ChartType = xlColumnClustered End With End Sub 

Ok, in diesem Moment lassen Sie uns den Code mit der Taste F5 oder manuell ausführen und sehen, wie das Diagramm aussieht.

Schritt 9: Ändern Sie nun andere Eigenschaften des Diagramms. Um den Diagrammtitel unten zu ändern, ist der Code.

So haben wir viele Eigenschaften und Methoden mit Diagrammen. Verwenden Sie jeden von ihnen, um die Auswirkungen zu sehen und zu lernen.

 Sub Charts_Example1 () MyChart als Diagramm dimmen Set MyChart = Charts.Add With MyChart .SetSourceData Sheets ("Sheet1"). Range ("A1: B7") .ChartType = xlColumnClustered .ChartTitle.Text = "Sales Performance" End With End Sub 

# 2 - Erstellen Sie ein Diagramm mit derselben Excel-Tabelle wie die Form

Um das Diagramm mit demselben Arbeitsblatt (Datenblatt) wie die Form zu erstellen, müssen Sie eine andere Technik verwenden.

Schritt 1: Deklarieren Sie zuerst drei Objektvariablen.

Code:

 Sub Charts_Example2 () Dim Ws As Worksheet Dim Rng As Range Dim MyChart As Object End Sub 

Schritt 2: Legen Sie dann die Arbeitsblattreferenz fest.

Code:

 Sub Charts_Example2 () Dim Ws als Arbeitsblatt Dim Rng als Bereich Dim MyChart als Objektmenge Ws = Arbeitsblätter ("Sheet1") End Sub 

Schritt 3: Legen Sie nun das Bereichsobjekt in VBA fest

Code:

 Sub Charts_Example2 () Dim Ws als Arbeitsblatt Dim Rng als Bereich Dim MyChart als Objektmenge Ws = Arbeitsblätter ("Sheet1") Set Rng = Ws.Range ("A1: B7") End Sub 

Schritt 4: Legen Sie nun das Diagrammobjekt fest.

Code:

 Sub Charts_Example2 () Dim Ws als Arbeitsblatt Dim Rng als Bereich Dim MyChart als Objektmenge Ws = Arbeitsblätter ("Sheet1") Set Rng = Ws.Range ("A1: B7") Set MyChart = Ws.Shapes.AddChart2 End Sub 

Schritt 5: Jetzt können wir das Diagramm wie gewohnt mithilfe der Anweisung „With“ entwerfen.

Code:

 Sub Charts_Example2 () Dim Ws als Arbeitsblatt 'Zum Halten der Arbeitsblattreferenz Dim Rng As Range' Zum Halten der Bereichsreferenz im Arbeitsblatt Dim MyChart As Object Set Ws = Arbeitsblätter ("Sheet1") 'Jetzt ist die Variable "Ws" gleich dem Blatt " Sheet1 "Set Rng = Ws.Range (" A1: B7 ") 'Jetzt enthält die Variable" Rng "den Bereich A1 bis B7 im Blatt" Sheet1 "Set MyChart = Ws.Shapes.AddChart2'. Das Diagramm wird als Form in das Diagramm aufgenommen Gleiches Arbeitsblatt mit MyChart.Chart .SetSourceData Rng 'Da wir bereits den Bereich der für das Diagramm zu verwendenden Zellen festgelegt haben, haben wir hier das RNG-Objekt verwendet .ChartType = xlColumnClustered .ChartTitle.Text = "Verkaufsleistung" End With End Sub 

Dadurch wird die folgende Tabelle hinzugefügt.

# 3 - Code zum Durchlaufen der Diagramme

Like how we look through sheets to change the name or insert values, hide & unhide them. Similarly to loop through the charts we need to use chart object property.

The below code will loop through all the charts in the worksheet.

Code:

 Sub Chart_Loop() Dim MyChart As ChartObject For Each MyChart In ActiveSheet.ChartObjects 'Enter the code here Next MyChart End Sub 

#4 – Alternative Method to Create Chart

We can use the below alternative method to create charts. We can use the Chart Object. Add method to create the chart below is the example code.

This will also create a chart like the previous method.

Code:

 Sub Charts_Example3() Dim Ws As Worksheet Dim Rng As Range Dim MyChart As ChartObject Set Ws = Worksheets("Sheet1") Set Rng = Ws.Range("A1:B7") Set MyChart = Ws.ChartObjects.Add(Left:=ActiveCell.Left, Width:=400, Top:=ActiveCell.Top, Height:=200) MyChart.Chart.SetSourceData Source:=Rng MyChart.Chart.ChartType = xlColumnStacked MyChart.Chart.ChartTitle.Text = "Sales Performance" End Sub