Gäller för
Excel 2010

Sammanfattning

I Microsoft Excel finns inget inbyggt kommando för koppling av textetiketter till datapunkter i punkt- och bubbeldiagram. Du kan dock skapa ett VBA-makro för att utföra funktionen. Den här artikeln innehåller ett exempelmakro som genomför den här uppgiften på ett XY-punktdiagram. Samma kod kan dock användas för bubbeldiagram.

Mer information

Microsoft tillhandahåller endast programmeringsexempel för illustrationer, utan garantier som antingen uttrycks eller är underförstådda. Detta omfattar, men är inte begränsat till, de underförstådda garantierna om säljbarhet eller lämplighet för ett visst ändamål. Den här artikeln förutsätter att du är bekant med programmeringsspråket som demonstreras och med de verktyg som används för att skapa och felsöka procedurer. Microsofts supporttekniker kan hjälpa dig att förklara funktionaliteten i en viss procedur. Men de kommer inte att ändra dessa exempel för att ge ytterligare funktioner eller konstruera procedurer för att uppfylla dina specifika krav. Användningen av exempelkoden förutsätter att data och tillhörande etiketter är ordnade med följande format i ett kalkylblad:

  • Den första kolumnen innehåller dataetiketterna.

  • Den andra kolumnen innehåller x-värden för punktdiagrammet.

  • Den tredje och efterföljande kolumner innehåller y-värden för punktdiagrammet.

Obs! Även om det angivna exemplet bara innehåller en kolumn med data för y-värden kan du använda mer än en serie data.Om du vill använda makrona i den här artikeln skapar du ett diagram med följande data: A1: Etiketter B1: X-värden C1: Y-värden 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 Obs! Tabellen ska inte innehålla tomma kolumner och den kolumn som innehåller dataetiketterna ska inte skiljas från den kolumn som innehåller x-värdena. Etiketterna och värdena måste anges i exakt det format som beskrivs i den här artikeln. (Cellen längst upp till vänster behöver inte vara cell A1.) Så här bifogar du textetiketter till datapunkter i ett punktdiagram:

  1. Markera cellintervallet B1:C6 i det kalkylblad som innehåller exempeldata.

  2. Så här gör du i Microsoft Office Excel 2003 och tidigare versioner av Excel:

    1. Klicka på Diagram på Infoga-menyn.

    2. Klicka på fliken Standardtyper i dialogrutan Diagramguiden - Steg 1 av 4 - Diagramtyp. Klicka på XY (punkt) under Diagramtyp och klicka sedan på Nästa.

    3. Klicka på fliken Dataområde i dialogrutan Diagramguiden - Steg 2 av 4 - Diagrammets källdata. Under Serie in klickar du på Kolumner och sedan på Nästa.

    4. Klicka på Nästa i diagramguiden – steg 3 av 4 – dialogrutan Diagramalternativ .

    5. Klicka på alternativet Som nytt blad i diagramguiden – steg 4 av 4 – plats för diagram och klicka sedan på Slutför.

    I Microsoft Office Excel 2007 gör du så här:

    1. Klicka på fliken Infoga, klicka på Punkt i gruppen Diagram och välj sedan en typ.

    2. Klicka på Flytta diagram i gruppen Plats på fliken Design, sedan på Nytt blad och därefter på OK.

  3. Starta Visual Basic Editor genom att trycka på ALT+F11.

  4. Klicka på Modul på Infoga-menyn.

  5. Skriv följande exempelkod i modulbladet:

    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
  6. Återgå till Excel genom att trycka på ALT+Q.

  7. Växla till diagrambladet.

  8. I Excel 2003 och tidigare versioner av Excel pekar du på Makro i menyn Verktyg och klickar sedan på Makron. Klicka på AttachLabelsToPoints och kör sedan makrot genom att klicka på Kör.I Excel 2007 klickar du på fliken Utvecklare , klickar på Makro i gruppen Kod , väljer BifogaLabelsToPoints och klickar sedan på Kör.

När makrot körs kopplas etiketterna i cellerna A2:A6 till datapunkterna i diagrammet.

Behöver du mer hjälp?

Vill du ha fler alternativ?

Utforska prenumerationsförmåner, bläddra bland utbildningskurser, lär dig hur du skyddar din enhet med mera.