Erstellen Sie eine Excel-makro für mehrere Diagramme mit gleichen x-Werte, aber unterschiedliche y-Werte

Ich versuche zur Automatisierung der Erstellung von Diagrammen in Excel mittels eines Makros.
Prinzipiell habe ich schon eine Menge Daten (41 Spalten, beginnend ab Spalte C bis Spalte AQ) jeder mit einem anderen 'Namen'. In einer Spalte gibt es zwei Serien in zwei verschiedenen Zeilen-Abschnitte (eines von Zeile 3 bis 8, die einen von Zeile 12 bis 17).

Möchte ich ein Diagramm pro Spalte, also insgesamt werde ich 41 Graphen. Jedes Diagramm enthält zwei Reihen. In Spalte B sind die Werte auf der X-Achse, und dies ist für alle Graphen der gleiche.

Ist der Zweck, erstellen Sie eine for next-Schleife mit der y-Achse Werte, und haben Sie alle auf einmal erstellt.

Ich habe versucht, die Codierung der erste Teil (nur das erstellen eines Graphen mit der x-Achse die Werte von B3:B8 und auf der y-Achse die Werte von C3:C8, und die zweite Reihe nur ein paar Zeilen nach unten.

Bekomme ich eine Fehlermeldung und ich verstehe nicht, warum, ich habe versucht, verschiedene Ansätze, aber es funktioniert nie. Der Fehler liegt in dieser Zeile: ActiveChart.SeriesCollection(1).Werte = Range(Cells(3, 3), Cells(8, 3)).Wert

Hat jemand irgendwelche Ideen, was falsch sein kann oder wie man dieses problem angehen?

Sub Macro5()

    ActiveSheet.Shapes.AddChart.Select
    ActiveChart.ChartType = xlXYScatterSmoothNoMarkers
    ActiveChart.SeriesCollection.NewSeries
    ActiveChart.SeriesCollection(1).Name = "='Blad1'!$A$1"
    ActiveChart.SeriesCollection(1).XValues = "='Blad1'!$B$3:$B$8"
    ActiveChart.SeriesCollection(1).Values = Range(Cells(3, 3), Cells(8, 3)).Value
    ActiveChart.SeriesCollection.NewSeries
    ActiveChart.SeriesCollection(2).Name = "='Blad1'!$A$10"
    ActiveChart.SeriesCollection(2).XValues = "='Blad1'!$B$12:$B$17"
    ActiveChart.SeriesCollection(2).Values = Range(Cells(12, 3), Cells(17, 3)).Value
    ActiveChart.ChartType = xlXYScatterSmoothNoMarkers
    ActiveChart.Axes(xlValue).MajorGridlines.Select
    Selection.Delete
    ActiveChart.SeriesCollection(1).Trendlines.Add
    ActiveChart.SeriesCollection(1).Trendlines(1).Select
    Selection.DisplayEquation = True
    Selection.DisplayRSquared = True    
    ActiveChart.SeriesCollection(2).Trendlines.Add
    ActiveChart.SeriesCollection(2).Trendlines(1).Select
    Selection.DisplayEquation = True
    Selection.DisplayRSquared = True

End Sub
  • was ist die Fehlermeldung, die Sie bekommen?
InformationsquelleAutor blaaat | 2013-11-27
Schreibe einen Kommentar