我在使用VBA添加系列制作填充雷达图时遇到了麻烦。可能有更好的方法来做到这一点,但要构建所需的图表(没有 VBA),我在工作表中创建一个表(120,12),添加一个"填充的雷达& #34; A1:L120范围内的图表,然后手动更新公式栏:
AS
我们的想法是每列中只有11个值为非零,使得图表看起来像这样:
这里是我通常用来制作图表的范围的前3列的一个不好的例子:
我希望能够在VBA中执行此操作,但不是从工作表中的某个范围中获取值,而是来自(120,12)数组 。我已经阅读了几个具有相似意图的不同页面,但我还没有看到解决此特定问题的页面。一个大问题是每个SERIES需要来自我的数组中的单个列,并且许多页面说它不可能从数组中拉出单个列以放入= SERIES函数。
总的来说,我正在努力解决的一个大问题是使用数组中的值填充图表。非常感谢任何帮助。
谢谢!
答案 0 :(得分:0)
This post partially answers the question。
我设置了如下图所示的数据。
然后,以下代码创建具有多个系列的图表。
Sub CreateChartFromArray()
Dim c As Chart
Dim s As Series
Dim myData As Variant
ActiveSheet.Shapes.AddChart.Select
Set c = ActiveChart
ActiveChart.ChartType = xlRadar
For i = 1 To 12
myData = Range(Cells(1, i), Cells(101, i)).Value
Set s = c.SeriesCollection.NewSeries()
s.Values = myData
Next
End Sub