我有一些代码可以将多个系列的数据绘制到单个图表中,所有这些都来自数据的2列(X和Y值)。我现在设置它使得if语句检查另一列数据中单个系列的常量“ID”,并且一旦“ID”改变以表示新系列,将绘制一个新系列,然后将绘制图表。
代码将循环显示,我可以观察它在图表上绘制我想要的每个系列,但是在执行图表之后,只会绘制两列中的最后一个系列。之后我可以检查图表,看看系列是否已经生成,但除了列中的最后一个,它们都是无数据的。以下是我的代码,我感谢任何评论。
For i = datastart To dataend
If ws1.Cells(i, 3).Value <> ws1.Cells(i + 1, 3).Value Then
Z = i - k + j
t = i - k + 1
With Chart5
.PlotArea.Select
.SeriesCollection.NewSeries
.SeriesCollection(t).Name = ws1.Cells(i, 3).Value
.SeriesCollection(t).XValues = "=Data!$G$" & Z & ":$G$" & i
.SeriesCollection(t).Values = "=Data!$F$" & Z & ":$F$" & i
End With
j = i
Else
k = i
End If
Next i
我目前正在努力实现这一目标。
答案 0 :(得分:0)
这个怎么样:
' ... some other code
.SeriesCollection.newSeries
t = .SeriesCollection.Count
.SeriesCollection(t).Name = ws1.Cells(i, 3).Value
.SeriesCollection(t).XValues = "=Data!$G$" & z & ":$G$" & i
.SeriesCollection(t).Values = "=Data!$F$" & z & ":$F$" & i
' ... some other code