Zum dynamischen Erzeugen von Diagrammen, muss man manchmal dynamischen Ranges aufbauen, wenn z.B: Zeilen ausgelassen werden sollen, weil diese einen Nullwert oder sonstiges enthalten. Dann kann mit der folgenden Funktion die XValues-Range erzeugt werden aus den zuvor bestimmten Zeilennummern:
Function getRange(ByVal spaltenBuchstabe, ByVal zeilenNummern, ByVal anzahlDaten) As String
getRange = "="
For i = 0 To anzahlDaten - 1
getRange = getRange & "'SheetName'!$" & spaltenBuchstabe& "$" & zeilenNummern(i) & ":$" & spaltenBuchstabe& "$" & zeilenNummern(i)
If Not i >= anzahlDaten - 1 Then
getRange = getRange & ","
End If
Next
rangeString = rangeString & ""
End Function
rangeDaten = getRange("B", zeilenNummern, anzahlDaten)
ActiveChart.SeriesCollection(1).Values =rangeDaten
