使用VBA将多个数据系列添加到Excel图表

时间:2012-04-03 22:54:39

标签: excel charts excel-vba vba

假设我的数据是行,我想从中创建一个图表(x,y scatter)。

date    1.1. 1.2. 1.3. 1.4 1.5
set1    12  36  12  23  33
set2    44  22  11  1   13
set3    54  5   56  56  34
set4    1   2   6   12  33

如何将set1,set2和set4但不是set3添加到图表中而不必逐个选择它们?

对于x范围(日期)我可以做

Dim xrange As Range
Set xrange = Application.InputBox("select x-range", "Get Range", Type:=8)

但对数据集(选择多行)执行相同操作将不起作用,因为散点图中的每个系列都需要单独的范围

   ActiveChart.SeriesCollection(1).XValues = xrange
   ActiveChart.SeriesCollection(1).Values = "=Sheet1!$4:$4"

但我有多个数据集可供选择。我需要一种方法来从输入框选择中分割范围并将它们写入唯一变量。然后我会用上面的方法为每个xrange +变量对添加一个新系列。

有没有办法做到这一点?

一个potentail的答案不需要坚持我上面发布的内容,欢迎提出任何建议。

1 个答案:

答案 0 :(得分:4)

设置源数据范围。 Excel将自动为您创建系列。在下面的示例中,我将列A作为X,列B作为Y1,列D作为Y2:

ActiveChart.SetSourceData Source:=Range("A1:B4,D1:D4")