Ich verwende MS Excel 2010.
Ich habe ein Arbeitsblatt, das so aussieht
---/ 1001 / 1002 / 1003 / 1101 / 1102 / 1201 / 1202 / 1203 / 1204
R2 / ...
R3 / ...
...
Ich möchte ein Liniendiagramm erstellen, bei dem jede Spalte eine Reihe darstellt, die jedoch so gefärbt ist, dass alle Reihen mit den gleichen ersten beiden Ziffern die gleiche Farbe, aber unterschiedliche Schattierungen haben (so wären beispielsweise bei 10** alle rot, aber in zunehmend helleren Rottönen).
Irgendwelche Vorschläge? Danke für jede Hilfe.
Antwort1
Sie können so etwas verwenden:
Sub ColorLines()
Dim objSeries As series
Dim strLastDigits As String
Dim lngColorIndex As Long
lngColorIndex = 2
strLastDigits = ""
For Each objSeries In Diagramm1.SeriesCollection
If Left(objSeries.Name, 2) <> strLastDigits Then
'set new color
lngColorIndex = lngColorIndex + 1
objSeries.Border.ColorIndex = lngColorIndex
Else
'set shade of current color
If objSeries.Border.Color > 50 Then
objSeries.Border.Color = objSeries.Border.Color - 50
End If
End If
strLastDigits = Left(objSeries.Name, 2)
Next objSeries
End Sub
ABER – der konkrete Algorithmus zur Automatisierung der Schattierung und Farbgebung bleibt Ihnen überlassen ;)
Dies ist nur ein Beispiel, wie Sie dies tun könnten.