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

Charts 使用VBA将多个数据系列添加到excel图表,charts,excel,vba,Charts,Excel,Vba,假设我的数据是成行的,我想从中创建一个图表(x,y散点) 我如何将set1、set2和set4(而不是set3)添加到图表中,而不必逐个选择它们 对于x范围(日期),我可以做 但对数据集(选择多行)进行同样的操作是行不通的,因为散点图中的每个系列都需要一个单独的范围 ActiveChart.SeriesCollection(1).XValues = xrange ActiveChart.SeriesCollection(1).Values = "=Sheet1!$4:$4" 但我有

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

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

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

但对数据集(选择多行)进行同样的操作是行不通的,因为散点图中的每个系列都需要一个单独的范围

   ActiveChart.SeriesCollection(1).XValues = xrange
   ActiveChart.SeriesCollection(1).Values = "=Sheet1!$4:$4"
但我有多个数据集可供选择。我需要一种方法从输入框选择中分割范围,并将其写入唯一变量。然后,我将使用上述方法为每个xrange+变量对添加一个新系列

有办法做到这一点吗


一个可能的答案不需要坚持我上面发布的内容,任何建议都是欢迎的

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

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

您必须使用
.SeriesCollection.NewSeries
。请参阅中的“我的答复”。删除X值上方单元格中的标签(“本例中为日期”),以帮助Excel识别它们是X值,而不是另一组Y值。如果Excel在第一列中注意到日期格式,这可能是不必要的,但最好确定一下。
   ActiveChart.SeriesCollection(1).XValues = xrange
   ActiveChart.SeriesCollection(1).Values = "=Sheet1!$4:$4"
ActiveChart.SetSourceData Source:=Range("A1:B4,D1:D4")