ich würde gerne bei VBA mehrere Datenreihen in einem Diagramm automatisch UNTERSCHIEDLICH einfärben. In dem Diagramm können ca. 50 Hauptdatenreihen angezeigt werden.
Der Clou an der Sache ist, dass zu jeder Hauptdatenreihe zwei weitere Datenreihen gehören, die dieselbe Farbe wie die Hauptdatenreihe bekommen soll.
Momentan funktioniert das ganze so:
Sub Test()
Dim wb As Workbook, ws As Worksheet
Dim Verlauf As Series, Extremwerte As Series, ggw As Series
Dim farbe As Integer
Set wb = ActiveWorkbook
Set ws = wb.Sheets("Plot")
farbe = ws.Cells(1, 1)
ActiveSheet.ChartObjects("Diagramm_Reinstoff").Activate
'Hauptdatenreihe
Set Verlauf = ActiveChart.SeriesCollection.NewSeries
With Verlauf
.ChartType = xlXYScatterLinesNoMarkers
.Name = Hier steht der variable Name
.Values = Hier die Y-Werte
.XValues = Hier die X-Werte
.Format.Line.ForeColor.SchemeColor = farbe
End With
'Unterdatenreihen
Set Extremwerte = ActiveChart.SeriesCollection.NewSeries
With Extremwerte
.ChartType = xlXYScatter
.Name = Hier steht der variable Name
.Values = Hier die Y-Werte
.XValues = Hier die X-Werte
.Format.Line.Visible = msoFalse
.MarkerStyle = 8
.MarkerSize = 7
.MarkerBackgroundColor = Verlauf.Format.Line.ForeColor.RGB
.MarkerForegroundColorIndex = xlColorIndexNone
End With
Set ggw = ActiveChart.SeriesCollection.NewSeries
With ggw
.Name = Hier steht der variable Name
.Values = Hier die Y-Werte
.XValues = Hier die X-Werte
.Format.Line.BeginArrowheadStyle = msoArrowheadOval
.Format.Line.EndArrowheadStyle = msoArrowheadOval
.Format.Line.DashStyle = msoLineDash
.Format.Line.ForeColor.SchemeColor = Verlauf.Format.Line.ForeColor.SchemeColor
End With
ws.Cells(1, 1) = farbe + 1
End Sub
Dabei habe ich einen Zähler (farbe), der die Farbe der Hauptdatenreihe vorgibt, während die Unterdatenreihen sich auf diese "Hauptfarbe" beziehen. Die Idee bzw. die Umsetzung stammt ebenfalls aus dem Forum hier, dazu noch einmal vielen Dank!Mein Problem ist nun, dass sich die Farben nach 0-7 wiederholen. So ist 8 wieder die 0 und 9 wieder die 1. Erst ab der Zahl 18 kommen neue Farben hinzu.
Bsp:
0 Schwarz
1 Weiß
2 Rot
3 Grün
4 Blau
5 Gelb
6 Pink
7 Türkis
8 Schwarz
9 Weiß
10 Rot
11 Grün
16 Lia
Neue Farben
Nun meine Frage:
Kann ich das Problem irgendwie anders lösen, dass ich niemals dieselbe Farbe verwende, oder nur nach z.B. 20 Hauptdatenreihen? (Weiß natürlich ausgenommen)
Gibt es eine andere Möglichkeit die Farben zu setzen, anstatt über die vordefinierten SchemeColors?
Vielen Dank!
Gruß
Malte!