VBA-diagrammer - Eksempler på tilføjelse af diagram ved hjælp af VBA-kode

Indholdsfortegnelse

Excel VBA-diagrammer

Diagrammer kan betegnes som objekter i VBA, svarende til regnearket, kan vi også indsætte diagrammer i VBA på samme måde, først vælger vi de data og diagramtype, vi ønsker for ud data, nu er der to forskellige typer diagrammer, vi leverer en er det indlejrede diagram, hvor diagrammet er i det samme datablad, og et andet er kendt som kortarket, hvor diagrammet er i det separate ark med dataene.

I dataanalyse er visuelle effekter nøgleindikatorerne for den person, der har foretaget analysen. Visuals er den bedst mulige måde, som en analytiker kan formidle sit budskab på. Da vi alle er excel-brugere, bruger vi normalt en betydelig mængde tid på at analysere dataene og drage konklusioner med tal og diagrammer. Oprettelse af et diagram er en kunst at mestre, og jeg håber, du har god viden om at oprette diagrammer med Excel. I denne artikel viser vi dig, hvordan du opretter diagrammer ved hjælp af VBA-kodning.

Hvordan tilføjes diagrammer ved hjælp af VBA-kode i Excel?

# 1 - Opret diagram ved hjælp af VBA-kodning

For at oprette et diagram skal vi have en slags numeriske data. Til dette eksempel vil jeg bruge nedenstående eksempler på data.

Ok, lad os hoppe til VBA-editor.

Trin 1: Start underprocedure.

Kode:

Undertegninger_eksempel1 () Afslut sub

Trin 2: Definer variablen som diagram.

Kode:

Undertegninger_eksempel1 () Dim MyChart som diagram slut sub

Trin 3: Da diagrammet er en objektvariabel, skal vi indstille det.

Kode:

Underdiagram_eksempel1 () Dim MyChart som diagram Indstil MyChart = Diagrammer. Tilføj End Sub

Ovenstående kode tilføjer et nyt ark som et diagramark, ikke som et regneark.

Trin 4: Nu skal vi designe diagrammet. Åbn med erklæring.

Kode:

Underkort_eksempel1 () Dim MyChart som diagram Indstil MyChart = Diagrammer. Tilføj med MyChart-ende med slut-sub

Trin 5: Den første ting med det diagram, vi skal gøre, er at indstille kildeområdet ved at vælge metoden "Indstil kildedata " .

Kode:

Undertegninger_eksempel1 () Dim MyChart som diagram Indstil MyChart = Diagrammer. Tilføj med MyChart. SetSourceData slut med slut sub

Trin 6: Her skal vi nævne kildeområdet. I dette tilfælde er mit kildeområde i arket "Sheet1", og området er "A1 til B7".

Kode:

Underdiagrammer_eksempel1 () Dim MyChart som diagram Indstil MyChart = Diagrammer.Tilføj med MyChart .SetSourceData-ark ("Sheet1"). Område ("A1: B7") Afslut med End Sub

Trin 7: Derefter skal vi vælge den slags diagram, vi skal oprette. Til dette har vi brug for at vælge Diagramtype ejendom.

Kode:

Underdiagrammer_eksempel1 () Dim MyChart som diagram Indstil MyChart = Diagrammer.Tilføj med MyChart .SetSourceData-ark ("Sheet1"). Område ("A1: B7"). ChartType = Afslut med slut-sub

Trin 8: Her har vi en række diagrammer. Jeg skal vælge " xlColumnClustered " -diagrammet .

Kode:

Underdiagrammer_eksempel1 () Dim MyChart som diagram Indstil MyChart = Diagrammer.Tilføj med MyChart .SetSourceData-ark ("Sheet1"). Område ("A1: B7"). ChartType = xlColumnClustered End With End Sub

Ok, lad os i øjeblikket køre koden ved hjælp af F5-tasten eller manuelt og se, hvordan diagrammet ser ud.

Trin 9: Skift nu andre egenskaber i diagrammet. For at ændre korttitlen er nedenstående kode.

Som dette har vi mange egenskaber og metoder med diagrammer. Brug hver enkelt af dem til at se virkningen og lære.

Underdiagrammer_eksempel1 () Dim MyChart som diagram Indstil MyChart = Diagrammer.Tilføj med MyChart .SetSourceData-ark ("Sheet1"). Område ("A1: B7"). ChartType = xlColumnClustered .ChartTitle.Text = "Salgsydelse" Slut med slut-sub

# 2 - Opret et diagram med det samme Excel-ark som figur

For at oprette diagrammet med det samme regneark (datablad) som form, skal vi bruge en anden teknik.

Trin 1: Erklær først tre objektsvariabler.

Kode:

Undertegninger_eksempel2 () Dim Ws som regneark Dim Rng som område Dim MyChart som objektets slut Sub

Trin 2: Indstil derefter regnearkreferencen.

Kode:

Undertegninger_eksempel2 () Dim Ws som regneark Dim Rng som område Dim MyChart som objektsæt Ws = regneark ("Sheet1") Afslut sub

Trin 3: Indstil nu rækkeviddeobjektet i VBA

Kode:

Undertegninger_eksempel2 () Dim Ws som regneark Dim Rng som område Dim MyChart som objektsæt Ws = regneark ("Sheet1") Indstil Rng = Ws.Range ("A1: B7") Afslut sub

Trin 4: Indstil nu diagramobjektet.

Kode:

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:

Undertegninger_eksempel3 () Dim Ws som regneark Dim Rng som område Dim MyChart som 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 = "Salgspræstation" Slut Sub

Interessante artikler...