MS Excel 2010 を使用しています。
次のようなワークシートがあります
---/ 1001 / 1002 / 1003 / 1101 / 1102 / 1201 / 1202 / 1203 / 1204
R2 / ...
R3 / ...
...
各列がシリーズである折れ線グラフを作成し、最初の 2 桁が同じすべてのシリーズが同じ色で色合いが異なるように色付けしたいと思います (つまり、10** はすべて赤ですが、赤の色合いが徐々に明るくなります)。
何か提案はありますか? ご協力いただければ幸いです。
答え1
次のようなものを使用できます:
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
ただし、シェーディングとカラーリングを自動化する具体的なアルゴリズムはあなた次第です ;)
これは、これをどのように実行できるかを示す単なる例です。