Excel-VBA-Diagramm Mit Mehreren Reihen, Aber Gleiche X-Wert

Ich versuche ein VB-Skript in Excel, die erstellt ein "Stacked Bar Chart".

Von Beispielen finden Sie in diesem Website, ich habe den folgenden code:

Sub AddNewSeries()
    ActiveSheet.Shapes.AddChart2(297, xlBarStacked).Select
    With ActiveChart.SeriesCollection.NewSeries
        .Name = ActiveSheet.Range("$E$3")
        .Values = ActiveSheet.Range("IFPStart")
        .XValues = ActiveSheet.Range("IFPPN")
        .Name = ActiveSheet.Range("$G$4")
        .Values = ActiveSheet.Range("IFPBC")
        .XValues = ActiveSheet.Range("IFPPN")
         .Name = ActiveSheet.Range("$H$4")
        .Values = ActiveSheet.Range("IFPBT")
        .XValues = ActiveSheet.Range("IFPPN")
         .Name = ActiveSheet.Range("$I$4")
        .Values = ActiveSheet.Range("IFPEC")
        .XValues = ActiveSheet.Range("IFPPN")
         .Name = ActiveSheet.Range("$J$4")
        .Values = ActiveSheet.Range("IFPFin")
        .XValues = ActiveSheet.Range("IFPPN")
        .Name = ActiveSheet.Range("$K$4")
        .Values = ActiveSheet.Range("IFPIMS")
        .XValues = ActiveSheet.Range("IFPPN")
        .Name = ActiveSheet.Range("$L$4")
        .Values = ActiveSheet.Range("IFPInf")
        .XValues = ActiveSheet.Range("IFPPN")
        .Name = ActiveSheet.Range("$M$4")
        .Values = ActiveSheet.Range("IFPPT")
        .XValues = ActiveSheet.Range("IFPPN")
        .Name = ActiveSheet.Range("$N$4")
        .Values = ActiveSheet.Range("IFPSols")
        .XValues = ActiveSheet.Range("IFPPN")
    End With
End Sub

Sehen Sie, dass anstelle der Verwendung von Zellbezügen, ich benannte Bereiche, da werden die Daten dynamisch.

Der code läuft ohne Fehler angezeigt, aber die Letzte Serie verwendet, d.h.

.Name = ActiveSheet.Range("$N$4")

überschreibt die zuvor gezeichneten Daten.

Was mache ich falsch?

InformationsquelleAutor IRHM | 2013-12-31
Schreibe einen Kommentar