VBA -opas kaavioille ja kaavioille

Sisällysluettelo

Excelin kaavioita ja kaavioita käytetään tietojen visuaaliseen näyttämiseen. Tässä opetusohjelmassa aiomme käsitellä VBA: n käyttöä kaavioiden ja kaavioelementtien luomiseen ja käsittelyyn.

Voit luoda upotettuja kaavioita laskentataulukkoon tai kaavioita omille kaavioarkkeilleen.

Upotetun kaavion luominen VBA: n avulla

Meillä on alue A1: B4, joka sisältää lähdetiedot, jotka on esitetty alla:

Voit luoda kaavion käyttämällä ChartObjects.Add -menetelmää. Seuraava koodi luo upotetun kaavion laskentataulukkoon:

12345678 Sub CreateEmbeddedChartUsingChartObject ()Dim embeddedchart kuten ChartObjectAseta embeddedchart = Sheets ("Sheet1"). ChartObjects.Add (Vasen: = 180, Leveys: = 300, Ylä: = 7, Korkeus: = 200)embeddedchart.Chart.SetSourceData Lähde: = Sheets ("Sheet1"). Alue ("A1: B4")End Sub

Tulos on:

Voit myös luoda kaavion Shapes.AddChart -menetelmällä. Seuraava koodi luo upotetun kaavion laskentataulukkoon:

12345678 Sub CreateEmbeddedChartUsingShapesAddChart ()Dim embeddedchart as ShapeAseta embeddedchart = Sheets ("Sheet1"). Shapes.AddChartembeddedchart.Chart.SetSourceData Lähde: = Sheets ("Sheet1"). Alue ("A1: B4")End Sub

Kaaviotyypin määrittäminen VBA: n avulla

Meillä on alue A1: B5, joka sisältää lähdetiedot, jotka on esitetty alla:

Voit määrittää kaavion tyypin ChartType -ominaisuuden avulla. Seuraava koodi luo ympyräkaavion laskentataulukkoon, koska ChartType -ominaisuuden arvoksi on asetettu xlPie:

123456789 AlimääritysAChartType ()Dim chrt ChartObjectinaAseta chrt = Sheets ("Sheet1"). ChartObjects.Add (Vasen: = 180, Leveys: = 270, Yläosa: = 7, Korkeus: = 210)chrt.Chart.SetSourceData Lähde: = Sheets ("Sheet1"). Alue ("A1: B5")chrt.Chart.ChartType = xlPieEnd Sub

Tulos on:

Nämä ovat joitain suosittuja kaaviotyyppejä, jotka yleensä määritetään, vaikka on muitakin:

  • xlArea
  • xlPie
  • xlLine
  • xlRadar
  • xlXYScatter
  • xlPinta
  • xlBubble
  • xlBarClastered
  • xlColumnClastered

Kaavion otsikon lisääminen VBA: n avulla

Laskentataulukkoon on valittu kaavio alla esitetyllä tavalla:

Sinun on ensin lisättävä kaavion otsikko käyttämällä Chart.SetElement -menetelmää ja määritettävä sitten kaavion otsikon teksti asettamalla ChartTitle.Text -ominaisuus.

Seuraava koodi näyttää, kuinka voit lisätä kaavion otsikon ja määrittää aktiivisen kaavion otsikon tekstin:

123456 Sub AddingAndSettingAChartTitle ()ActiveChart.SetElement (msoElementChartTitleAboveChart)ActiveChart.ChartTitle.Text = "Tuotteen myynti"End Sub

Tulos on:

Huomautus: Sinun on ensin valittava kaavio, jotta siitä tulee aktiivinen kaavio, jotta voit käyttää koodissasi olevaa ActiveChart -objektia.

Kaavion taustavärin muuttaminen VBA: n avulla

Laskentataulukkoon on valittu kaavio alla esitetyllä tavalla:

Voit muuttaa koko kaavion taustaväriä asettamalla ChartArea -objektin FillFormat -objektin RGB -ominaisuuden. Seuraava koodi antaa kaavion vaalean oranssin taustavärin:

12345 AlalisäysABackgroundColorToTheChartArea ()ActiveChart.ChartArea.Format.Fill.ForeColor.RGB = RGB (253, 242, 227)End Sub

Tulos on:

Voit myös muuttaa koko kaavion taustaväriä asettamalla ChartArea -objektin Interior -objektin ColorIndex -ominaisuuden. Seuraava koodi antaa kaavion oranssille taustavärille:

12345 AlalisäysABackgroundColorToTheChartArea ()ActiveChart.ChartArea.Interior.ColorIndex = 40End Sub

Tulos on:

Huomautus: ColorIndex -ominaisuuden avulla voit määrittää värin, joka perustuu arvoon 1-56, joka on piirretty esiasetetusta paletista, nähdäksesi mitkä arvot edustavat eri värejä napsauttamalla tätä.

Kaavion piirtoalueen värin muuttaminen VBA: n avulla

Laskentataulukkoon on valittu kaavio alla esitetyllä tavalla:

Voit muuttaa vain kaavion piirtoalueen taustaväriä asettamalla PlotArea -objektin FillFormat -objektin RGB -ominaisuuden. Seuraava koodi antaa kaavion piirtoalueelle vaaleanvihreän taustavärin:

12345 AlalisäysABackgroundColorToThePlotArea ()ActiveChart.PlotArea.Format.Fill.ForeColor.RGB = RGB (208, 254, 202)End Sub

Tulos on:

Selitteen lisääminen VBA: n avulla

Laskentataulukkoon on valittu kaavio alla esitetyllä tavalla:

Voit lisätä selitteen Chart.SetElement -menetelmällä. Seuraava koodi lisää selityksen kaavion vasemmalle puolelle:

12345 AlalisäysALegend ()ActiveChart.SetElement (msoElementLegendLeft)End Sub

Tulos on:

Voit määrittää selitteen sijainnin seuraavilla tavoilla:

  • msoElementLegendLeft - näyttää selityksen kaavion vasemmalla puolella.
  • msoElementLegendLeftOverlay - peittää kaavion vasemmalla puolella olevan selityksen.
  • msoElementLegendRight - näyttää selityksen kaavion oikealla puolella.
  • msoElementLegendRightOverlay - peittää kaavion oikealla puolella olevan selityksen.
  • msoElementLegendBottom - näyttää selityksen kaavion alareunassa.
  • msoElementLegendTop - näyttää selityksen kaavion yläosassa.

Tietojen lisääminen VBA: n avulla

Laskentataulukkoon on valittu kaavio alla esitetyllä tavalla:

Voit lisätä datatarroja Chart.SetElement -menetelmällä. Seuraava koodi lisää datatarrat kaavion sisäpuolelle:

12345 AlalisäysADataLabels ()ActiveChart.SetElement msoElementDataLabelInsideEndEnd Sub

Tulos on:

Voit määrittää, miten datatarrat sijoitetaan seuraavilla tavoilla:

  • msoElementDataLabelShow - näyttää datatarrat.
  • msoElementDataLabelRight - näyttää datatarrat kaavion oikealla puolella.
  • msoElementDataLabelLeft - näyttää datatarrat kaavion vasemmalla puolella.
  • msoElementDataLabelTop - näyttää datatarrat kaavion yläosassa.
  • msoElementDataLabelBestFit - määrittää parhaan istuvuuden.
  • msoElementDataLabelBottom - näyttää datatarrat kaavion alareunassa.
  • msoElementDataLabelCallout - näyttää datatarrat huomiotekstinä.
  • msoElementDataLabelCenter - näyttää datatarrat keskellä.
  • msoElementDataLabelInsideBase - näyttää tietokannat sisäpohjassa.
  • msoElementDataLabelOutSideEnd - näyttää datatarrat kaavion ulkopuolella.
  • msoElementDataLabelInsideEnd - näyttää datatarrat kaavion sisäpuolella.

X-akselin ja otsikon lisääminen VBA: han

Laskentataulukkoon on valittu kaavio alla esitetyllä tavalla:

Voit lisätä X-akselin ja X-akselin otsikon Chart.SetElement-menetelmällä. Seuraava koodi lisää kaavioon X-akselin ja X-akselin otsikon:

123456789 AlalisäysAnXAxisandXTitle ()ActiveChartin kanssa.SetElement msoElementPrimaryCategoryAxisShow.SetElement msoElementPrimaryCategoryAxisTitleHorizontalLopetaEnd Sub

Tulos on:

Y-akselin ja otsikon lisääminen VBA: han

Laskentataulukkoon on valittu kaavio alla esitetyllä tavalla:

Voit lisätä Y-akselin ja Y-akselin otsikon Chart.SetElement-menetelmällä. Seuraava koodi lisää Y-akselin ja Y-akselin otsikon kaavioon:

1234567 AlalisäysAYAxisandYTitle ()ActiveChartin kanssa.SetElement msoElementPrimaryValueAxisShow.SetElement msoElementPrimaryValueAxisTitleHorizontalLopetaEnd Sub

Tulos on:

Akselin numeromuodon muuttaminen

Laskentataulukkoon on valittu kaavio alla esitetyllä tavalla:

Voit muuttaa akselin lukumuotoa. Seuraava koodi muuttaa y-akselin numeromuodon valuutaksi:

12345 AlimuutosTheNumberFormat ()ActiveChart.Axes (xlValue) .TickLabels.NumberFormat = "$#, ## 0.00"End Sub

Tulos on:

Kaavion fontin muotoilun muuttaminen

Laskentataulukkoon on valittu seuraava kaavio:

Voit muuttaa koko kaavion fontin muotoilua viittaamalla fonttiobjektiin ja muuttamalla sen nimeä, kirjasimen painoa ja kokoa. Seuraava koodi muuttaa koko kaavion fontin tyypin, painon ja koon.

12345678910 AlimuutosTheFontFormatting ()ActiveChartin kanssa.ChartArea.Format.TextFrame2.TextRange.Font.Name = "Times New Roman".ChartArea.Format.TextFrame2.TextRange.Font.Bold = Tosi.ChartArea.Format.TextFrame2.TextRange.Font.Size = 14Lopeta

Tulos on:

Kaavion poistaminen VBA: n avulla

Laskentataulukkoon on valittu kaavio alla esitetyllä tavalla:

Voimme käyttää seuraavaa koodia tämän kaavion poistamiseen:

12345 AlapoistoTheChart ()ActiveChart.Parent.DeleteEnd Sub

Viitaten ChartObjects -kokoelmaan

Voit käyttää kaikkia laskentataulukon tai työkirjan upotettuja kaavioita viittaamalla ChartObjects -kokoelmaan. Meillä on kaksi kaaviota samassa taulukossa alla:

Viittaamme ChartObjects -kokoelmaan antaaksemme molemmille laskentataulukon kaavioille saman korkeuden, leveyden, poistamalla ruudukon viivat, tehdäksemme taustaväristä saman, antaaksemme kaavioille saman juoni -alueen värin ja tehdäksesi kuvaaja -alueen viivan väristä saman väri:

12345678910111213141516 AliviittausToAllTheChartsOnASheet ()Dim cht Kuten ChartObjectJokaista cht ActiveSheet.ChartObjectscht. korkeus = 144,85cht. leveys = 246,61cht.Chart.Axes (xlValue) .MajorGridlines.Deletecht.Chart.PlotArea.Format.Fill.ForeColor.RGB = RGB (242, 242, 242)cht.Chart.ChartArea.Format.Fill.ForeColor.RGB = RGB (234, 234, 234)cht.Chart.PlotArea.Format.Line.ForeColor.RGB = RGB (18, 97, 172)Seuraava chtEnd Sub

Tulos on:

Kaavion lisääminen omalle kaavioarkille

Meillä on alue A1: B6, joka sisältää lähdetiedot, jotka on esitetty alla:

Voit luoda kaavion Charts.Add -menetelmällä. Seuraava koodi luo kaavion omalle kaavioarkille:

123456 Alakuvan lisääminenAChartOnItsOwnChartSheet ()Sheets ("Sheet1"). Alue ("A1: B6"). ValitseKaaviot LisääEnd Sub

Tulos on:

Katso joitain muita kartoitusoppaitamme:

Kaaviot Excelissä

Luo pylväskaavio VBA: ssa

wave wave wave wave wave