Yhteenveto
Microsoft Excelissä ei ole valmista komentoa, joka liitti tekstiotsikot automaattisesti piste- tai kuplakaavion arvopisteisiin. Voit kuitenkin luoda Microsoft Visual Basic for Applications -makron, joka tekee tämän. Tässä artikkelissa on esimerkkimakro, joka suorittaa tämän tehtävän XY Scatter -kaaviossa. Samaa koodia voidaan kuitenkin käyttää kuplakaaviossa.
Lisätietoja
Microsoft tarjoaa ohjelmointiesimerkkejä vain havainnollistamista varten ilman ilmoitettua tai oletettua takuuta. Tähän sisältyvät muun muassa epäsuorat takuut soveltuvuudesta kaupankäynnin kohteeksi tai soveltuvuudesta tiettyyn tarkoitukseen. Tässä artikkelissa oletetaan, että tunnet ohjelmoinnin kielen, jota esitellään, sekä työkalut, joita käytetään toimintosarjojen luomiseen ja virheenkorjaukseen. Microsoftin tukihenkilöt voivat auttaa selittämään tietyn menettelyn toiminnallisuuden. He eivät kuitenkaan muokkaa näitä esimerkkejä lisätoimintojen tarjoamiseksi tai toimintosarjojen muodostamiseksi erityisvaatimusten mukaan. Tämän artikkelin esimerkkikoodissa oletetaan, että tiedot ja niihin liittyvät otsikot on järjestetty laskentataulukkoon seuraavan muodon mukaisesti:
-
Ensimmäisessä sarakkeessa on arvopisteiden otsikot.
-
Toinen sarake sisältää pistekaavion x-arvot.
-
Kolmas ja sitä seuraavat sarakkeet sisältävät pistekaavion y-arvot.
HUOMAUTUS: Vaikka annettu esimerkki sisältää vain yhden tietosarakkeen y-arvoille, voit käyttää useampaa kuin yhtä tietosarjaa.Jos haluat käyttää tämän artikkelin makroja, luo kaavio seuraavien tietojen avulla: A1: Otsikot B1: X Arvot C1: Y Arvot A2: DataPoint1 B2: 12 C2: 5 A3: DataPoint2 B3: 9 C3: 7 A4: DataPoint3 B4: 5 C4: 3 A5: DataPoint4 B5: 4 C5: 8 A6: DataPoint5 B6: 1 C6: 4 HUOMAUTUS: Taulukossa ei saa olla tyhjiä sarakkeita, eikä arvopisteiden otsikoita sisältävää saraketta saa erottaa x-arvot sisältävästä sarakkeesta. Otsikot ja arvot on aseteltava täsmälleen tässä artikkelissa kuvatussa muodossa. (Vasemmassa yläkulmassa olevan solun ei tarvitse olla solu A1.) Voit liittää tekstiotsikot pistekaavion arvopisteisiin seuraavasti:
-
Valitse mallitiedot sisältävässä laskentataulukossa solualue B1:C6.
-
Toimi Microsoft Office Excel 2003:ssa ja Excelin aiemmissa versioissa seuraavasti:
-
Valitse Lisää-valikosta Kaavio.
-
Valitse ohjattu kaavion luominen - Vaihe 1/4 – Kaaviolaji-valintaikkunassa Standard Lajit-välilehti. Valitse Kaaviolaji-kohdassa XY (Pistekaavio) ja valitse sitten Seuraava.
-
Valitse ohjattu kaavion luominen - Vaihe 2/4 – Kaaviolähteen tiedot -valintaikkunassa Tietoalue-välilehti. Valitse Sarjan osat -kohdassa Sarakkeet ja valitse sitten Seuraava.
-
Valitse ohjattu kaavion luominen - Vaihe 3/4 – Kaavion asetukset -valintaikkunassa Seuraava.
-
Valitse Ohjattu kaavion luominen - Vaihe 4 /4 -Kaavion sijainti -valintaikkunassa Uusi taulukko -vaihtoehto ja valitse sitten Valmis.
Toimi Microsoft Office Excel 2007:ssä seuraavasti:
-
Napsauta Lisää-välilehteä, valitse Pistekaaviot-ryhmässä ja valitse sitten tyyppi.
-
Valitse Rakenne-välilehdenSijainti-ryhmässäSiirrä kaavio, valitse Uusi taulukko ja valitse sitten OK.
-
-
Käynnistä Visual Basic Editor painamalla ALT+F11.
-
Valitse Lisää-valikossa Moduuli.
-
Kirjoita seuraava esimerkkikoodi moduulitaulukkoon:
Sub AttachLabelsToPoints() 'Dimension variables. Dim Counter As Integer, ChartName As String, xVals As String ' Disable screen updating while the subroutine is run. Application.ScreenUpdating = False 'Store the formula for the first series in "xVals". xVals = ActiveChart.SeriesCollection(1).Formula 'Extract the range for the data from xVals. xVals = Mid(xVals, InStr(InStr(xVals, ","), xVals, _ Mid(Left(xVals, InStr(xVals, "!") - 1), 9))) xVals = Left(xVals, InStr(InStr(xVals, "!"), xVals, ",") - 1) Do While Left(xVals, 1) = "," xVals = Mid(xVals, 2) Loop 'Attach a label to each data point in the chart. For Counter = 1 To Range(xVals).Cells.Count ActiveChart.SeriesCollection(1).Points(Counter).HasDataLabel = _ True ActiveChart.SeriesCollection(1).Points(Counter).DataLabel.Text = _ Range(xVals).Cells(Counter, 1).Offset(0, -1).Value Next Counter End Sub -
Palaa Exceliin painamalla ALT+Q.
-
Siirry kaaviotaulukkoon.
-
Valitse Excel 2003:ssa ja excelin aiemmissa versioissa Työkalut-valikosta Makro ja valitse sitten Makrot. Valitse LiitäLabelsToPoints ja suorita makro valitsemalla Suorita.Napsauta Excel 2007:ssä Kehitystyökalut-välilehteä, valitse Koodi-ryhmässä Makro, valitse LiitäLabelsToPoints ja valitse sitten Suorita.
Makro liittää solujen A2:A6 otsikot kaavion arvopisteisiin.