我想知道是否可以将数据从 VBA 代码设置为图表,而无需将其设置为一堆单元格。
为此,它可以绘制任何东西......甚至是随机数。但我不想使用任何单元格粘贴值,然后让图表获取这些值。
[我的应用程序有一张表,上面有很多字母“M”(维护)、“O”(操作)和“A”(可用),用于一年中的每一天,来自一堆设备。我对设备进行了一些 vba 过滤,以获得一些我想要绘制的内容,并希望根据“M”、“O”和“A”数量进行一些计算。]
我想知道是否可以将数据从 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 个字符。这意味着如果您对数据使用文字值(而不是范围),则每个字符都包含在公式中 - 因此您指定的小数位数越多,数据点越多,代码失败的可能性就越大。