VBA – 多个系列图表
我正在尝试通过循环将两个系列添加到单个XY散点图。 目前,我的代码创build了两个图表。 X值是恒定的,但Y值改变,所以我将它们添加到数组来保存它们。
Sub test() Dim sh As Worksheet Set sh = ThisWorkbook.Sheets("Sheet1") Dim thearray(9) As Double Dim chrt As Chart Dim n As Integer, i As Integer, q As Integer For q = 1 To 2 For i = 0 To 9 thearray(i) = WorksheetFunction.RandBetween(1, 20) Next Set chrt = sh.Shapes.AddChart.Chart With chrt .ChartType = xlXYScatterLines .SeriesCollection.NewSeries .SeriesCollection(1).Name = "TEST" .SeriesCollection(1).XValues = Range("B2:K2") .SeriesCollection(1).Values = thearray .SeriesCollection(1).MarkerSize = 4 For n = .SeriesCollection.Count To 2 Step -1 .SeriesCollection(n).Delete Next n End With Next End Sub
我感谢提供的任何帮助。
编辑:我试过改变
.SeriesCollection(1)
至
.SeriesCollection(q)
但它不起作用。
编辑2:我想通了。 我拿了
Set chrt = sh.Shapes.AddChart.Chart
在循环中,并用.SeriesCollection中的qreplace1
代码是有效的。
Sub test() Dim sh As Worksheet Set sh = ThisWorkbook.Sheets("Sheet1") Dim thearray(9) As Double Dim chrt As Chart Dim n As Integer, i As Integer, q As Integer Set chrt = sh.Shapes.AddChart.Chart For q = 1 To 2 For i = 0 To 9 thearray(i) = WorksheetFunction.RandBetween(1, 20) Next With chrt .ChartType = xlXYScatterLines .SeriesCollection.NewSeries .SeriesCollection(q).Name = "HFF " & q .SeriesCollection(q).XValues = Range("B2:K2") .SeriesCollection(q).Values = thearray .SeriesCollection(q).MarkerSize = 4 For n = .SeriesCollection.Count To 3 Step -1 .SeriesCollection(n).Delete Next n End With Next End Sub