Grafy VBA - Příklady přidání grafu pomocí kódu VBA

Excel VBA grafy

Grafy lze označit jako objekty ve VBA, podobně jako v listu můžeme grafy také vložit do VBA stejným způsobem, nejprve vybereme data a typ grafu, který chceme pro out data, nyní existují dva různé typy grafů, které poskytujeme jeden je graf vložení, kde je graf ve stejném listu dat a další je známý jako list grafu, kde je graf v samostatném listu dat.

V analýze dat jsou vizuální efekty klíčovými ukazateli výkonu osoby, která provedla analýzu. Vizuály jsou nejlepším možným způsobem, jakým analytik může předat své poselství. Jelikož jsme všichni uživatelé aplikace Excel, obvykle věnujeme značné množství času analýze dat a vyvozujeme závěry pomocí čísel a grafů. Vytvoření grafu je umění zvládnout a doufám, že máte dobré znalosti o tvorbě grafů v aplikaci Excel. V tomto článku vám ukážeme, jak vytvořit grafy pomocí kódování VBA.

Jak přidat grafy pomocí kódu VBA v aplikaci Excel?

# 1 - Vytvoření grafu pomocí kódování VBA

K vytvoření libovolného grafu bychom měli mít nějaký číselný údaj. V tomto příkladu použiji níže uvedená ukázková data.

Dobře, přeskočme na editor VBA.

Krok 1: Spusťte dílčí postup.

Kód:

Sub Charts_Example1 () End Sub

Krok 2: Definujte proměnnou jako graf.

Kód:

Sub Charts_Example1 () Dim MyChart jako konec grafu Sub

Krok 3: Jelikož je graf objektovou proměnnou, musíme ji nastavit .

Kód:

Sub Charts_Example1 () Dim MyChart As Chart Set MyChart = Charts.Add End Sub

Výše uvedený kód přidá nový list jako list s grafem, nikoli jako list.

Krok 4: Nyní musíme vytvořit graf. Otevřít s prohlášením.

Kód:

Sub Charts_Example1 () Dim MyChart As Chart Set MyChart = Charts.Add With MyChart End with End Sub

Krok 5: První věcí v grafu, kterou musíme udělat, je nastavit rozsah zdroje výběrem metody „Nastavit zdrojová data“ .

Kód:

Sub Charts_Example1 () Dim MyChart As Chart Set MyChart = Charts.Add With MyChart .SetSourceData End with End Sub

Krok 6: Zde musíme zmínit rozsah zdroje. V tomto případě je můj zdrojový rozsah v listu s názvem „List1“ a rozsah je „A1 až B7“.

Kód:

Sub Charts_Example1 () Dim MyChart As Chart Set MyChart = Charts.Add With MyChart .SetSourceData Sheets ("Sheet1"). Range ("A1: B7") End with End Sub

Krok 7: Další krok, musíme vybrat druh grafu, který budeme vytvářet. K tomu musíme vybrat vlastnost Typ grafu .

Kód:

Sub Charts_Example1 () Dim MyChart As Chart Set MyChart = Charts.Add With MyChart .SetSourceData Sheets ("Sheet1"). Range ("A1: B7") .ChartType = End With End Sub

Krok 8: Zde máme řadu grafů. Vyberu graf „ xlColumnClustered “.

Kód:

Sub Charts_Example1 () Dim MyChart As Chart Set MyChart = Charts.Add With MyChart .SetSourceData Sheets ("Sheet1"). Range ("A1: B7") .ChartType = xlColumnClustered End with End Sub

Ok, v tuto chvíli spustíme kód pomocí klávesy F5 nebo ručně a podívejme se, jak vypadá graf.

Krok 9: Nyní změňte další vlastnosti grafu. Níže uvedený kód slouží ke změně názvu grafu.

Takto máme mnoho vlastností a metod s grafy. Pomocí každého z nich uvidíte dopad a poučíte se.

Sub Charts_Example1 () Dim MyChart As Chart Set MyChart = Charts.Add With MyChart .SetSourceData Sheets ("Sheet1"). Range ("A1: B7") .ChartType = xlColumnClustered .ChartTitle.Text = "Sales Performance" End with End Sub

# 2 - Vytvořte graf se stejným listem Excel jako tvar

To create the chart with the same worksheet (datasheet) as shape, we need to use a different technique.

Step 1: First Declare threes Object Variables.

Code:

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

Step 2: Then Set the Worksheet reference.

Code:

Sub Charts_Example2() Dim Ws As Worksheet Dim Rng As Range Dim MyChart As Object Set Ws = Worksheets("Sheet1") End Sub

Step 3: Now set the range object in VBA

Code:

Sub Charts_Example2() Dim Ws As Worksheet Dim Rng As Range Dim MyChart As Object Set Ws = Worksheets("Sheet1") Set Rng = Ws.Range("A1:B7") End Sub

Step 4: Now, set the chart object.

Code:

Sub Charts_Example2() Dim Ws As Worksheet Dim Rng As Range Dim MyChart As Object Set Ws = Worksheets("Sheet1") Set Rng = Ws.Range("A1:B7") Set MyChart = Ws.Shapes.AddChart2 End Sub

Step 5: Now, as usual, we can design the chart by using the “With” statement.

Code:

Sub Charts_Example2() Dim Ws As Worksheet 'To Hold Worksheet Reference Dim Rng As Range 'To Hold Range Reference in the Worksheet Dim MyChart As Object Set Ws = Worksheets("Sheet1") 'Now variable "Ws" is equal to the sheet "Sheet1" Set Rng = Ws.Range("A1:B7") 'Now variable "Rng" holds the range A1 to B7 in the sheet "Sheet1" Set MyChart = Ws.Shapes.AddChart2 'Chart will be added as Shape in the same worksheet With MyChart.Chart .SetSourceData Rng 'Since we already set the range of cells to be used for chart we have use RNG object here .ChartType = xlColumnClustered .ChartTitle.Text = "Sales Performance" End With End Sub

This will add the chart below.

#3 - Code to Loop through the Charts

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, Šířka: = 400, Nahoře: = ActiveCell.Top, Výška: = 200) MyChart.Chart.SetSourceData Zdroj: = Rng MyChart.Chart.ChartType = xlColumnStacked MyChart.Chart.ChartTitle.Text = "Výkon prodeje" Konec Sub

Zajímavé články...