从VBA图表数据而不是单元格

我想知道是否有可能从VBA代码设置数据到图表,而不必将其设置为一堆单元格。

为此目的,它可以绘制任何东西,甚至是随机数字。 但我不想使用任何单元格粘贴值,然后让图表获取这些值。

[我的应用程序有一个工作表,每年的每一天,从一堆设备有很多字母“M”(维护),“O”(操作)和“A”(可用)。 我在设备上做了一些vba过滤,以获得一些我想要绘制的数据,并且想要根据“M”,“O”和“A”数量进行一些计算。]

这是一个简单的例子:

Sub AddChart() Dim cht As Chart Dim ser As Series Set cht = Charts.Add cht.ChartType = xlColumnClustered Set ser = cht.SeriesCollection.NewSeries ser.XValues = Array(1, 3, 5, 7, 9) ser.Values = Array(2.4, 3.2, 5.7, 12.67) End Sub 

您必须注意,在某些版本(2003年和以前,我认为)SERIES公式为图表限制为1024个字符。 在2010年,似乎只限于8192个字符。 这意味着,如果对数据使用文字值(而不是范围),则每个字符都包含在公式中 – 因此,指定的小数位数越多,数据点越多,代码越有可能失败。