まずは、グラフ系列の設定を行っている部分を切り出してはどうでしょう?
Sub SetSeriesParameters(series as Series, lineColor as Integer, _
markerStyle as XlMarkerStyle, fillColor as Integer, _
bgColor as Integer, lineStyle as MsoLineDashStyle, _
Optional fillVisible as MsoTriState = msoTrue)
With series
.Format.Line.ForeColor.RGB = lineColor
(省略)
.Fill.Visible = fillVisible
End With
End Sub
呼出し側は、以下のようになります。
(前略)
'違ったら起点セルを基にグラフに系列追加
Set rr = rr.Resize(c, 3)
Dim series as Series
Set series cht.SeriesCollection.NewSeries
With series
.Name = rr(1)
.XValues = rr.Columns(3) 'leakage
.Values = rr.Columns(4) 'Speed
If Left(rr(1).Value, 6) = "A01_1A" And Right(rr(1).Value, 4) = "000a" Then
SetSeriesParameters series, vgRed, xlMarkerStyleTriangle, RGB(255, 0, 0), RGB(255, 0, 0), msoLineSolid
ElseIf Left(rr(1).Value, 6) = "A01_1A" And Right(rr(1).Value, 4) = "100a" Then
SetSeriesParameters series, vgRed, xlMarkerStyleTriangle, RGB(255, 0, 0), RGB(255, 0, 0), msoLineSolid, msoFalse
(後略)
その後、lineColorとかmarkerStypeなどの各パラメータを、各パートで決定するように変更すれば、かなりすっきりするかと。
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。
2020/06/10 02:54
2020/06/10 04:43
2020/06/10 04:45
2020/06/10 08:15
2020/06/10 08:46