Probleme bei Skalierung eines Diagrams mit VBA
16.09.2008 13:50:00
Specke
ich habe ein Balkendiagramm erstellt, welches die Laufzeiten von Sicherungen anzeigt.
1. Datenreihe "Spalte Y" - Anfangszeit - ausgeblendet
2. Datenreihe "Spalte V" - Dauer
y-Achse "Spalte D" - Name der Sicherung
Wenn auf dem Datenblatt nur ein Tag ausgewählt wird, wird der im Diagramm auch nur angezeigt. Da die Sicherungszeiten seit Dez 2007 in der Tabelle stehen, ist das Diagramm so nicht zu verwenden.
Also skaliere ich das Diagrammm auf den gewünschten Tag.
Private Sub Chart_Activate()
With Worksheets("NW2")
'letzte beschriebene Zelle in Y
LastRow = .Range("Y65536").End(xlUp).Row
*) ActiveChart.SeriesCollection(1).XValues = "=NW2!R10C4:R" & LastRow & "C4"
ActiveChart.SeriesCollection(1).Values = "=NW2!R10C25:R" & LastRow & "C25"
ActiveChart.SeriesCollection(2).XValues = "=NW2!R10C4:R" & LastRow & "C4"
ActiveChart.SeriesCollection(2).Values = "=NW2!R10C22:R" & LastRow & "C22"
'kleinstes Datum bestimmen
For i = 10 To LastRow
If .Rows(i).Hidden = False Then
Minimum = CLng(.Cells(i, 25).Value)
Exit For
End If
Next i
'größtes Datum bestimmen
For i = LastRow To 10 Step -1
If .Rows(i).Hidden = False Then
Maximum = CLng(.Cells(i, 25).Value)
Exit For
End If
Next i
End With
'Diagramm - x-Achse skalieren
With ActiveChart.Axes(xlValue)
.MinimumScale = Minimum
.MaximumScale = Maximum
End With
End Sub
Leider kommt es nun in unregelmäßigen Abständen und bei verschiedenen ausgewählten Tagen bei *) zur Fehlermeldung "Die Methode "SeriesCollection für das Chart-Objekt ist fehlgeschlagen.
Woran kann das liegen?
Danke und Gruß
Uppe