ich versuche gerade mehrere Diagramme mit verschiedenen Daten zu füllen. Es gibt insgesamt 3 verschiedene Tabellenblätter, jedes dieser Blätter soll ein Diagramm enthalten. Das Diagramm soll je Spalte eine Linie bekommen. Die Daten fangen erst ab Zeile 9 an. Beim ersten Durchlauf fürs erste Blatt geht alles gut. Beim zweiten kommt ein Fehler. Hier der Code der Funktion:
Private Function DiagrammErstellen(sTabellenName As String, iChartNr As Integer)
Dim iAnzahlSpalten As Variant
Dim iZeile, iSpalte As Integer
Dim i As Integer: i = 0
iZeile = 9
iSpalte = 1
iAnzahlSpalten = Cells(1, Columns.Count).End(xlToLeft).Column
ThisWorkbook.Worksheets(sTabellenName).Activate
ActiveSheet.Shapes.AddChart2(, xlLine, , , 700, 500).Select
Application.CutCopyMode = False
'Diagramm auffüllen mit Werte aus Signalspalten
For i = 1 To iAnzahlSpalten
ActiveSheet.ChartObjects(iChartNr).Chart.SeriesCollection.NewSeries
ActiveSheet.ChartObjects(iChartNr).Chart.FullSeriesCollection(i).Values = range(Cells( _
_
iZeile, iSpalte), Cells(9, iSpalte).End(xlDown))
iSpalte = iSpalte + 1
Next i
End Function
Hier der Abschnitt der Hauptprozedur, in dem die Funktion aufgerufen wird:Dim c As Integer
For c = 3 To ActiveWorkbook.Worksheets.Count 'Bei 3 anfangen, da erstes Signalspalten-Blatt an _
3. Stelle ist
Debug.Print DiagrammErstellen(Worksheets(c).Name, c - 2)
Next c
Der Fehler tritt in der Funktion in der Zeile
ActiveSheet.ChartObjects(iChartNr).Chart.SeriesCollection.NewSeries
auf.Habt ihr eine Idee, was der Fehler sein könnte?
Ich bin jetzt schon dankbar für eure Hilfe.
Mit freundlichen Grüßen,
Eyyub