将多个系列添加到图表中

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了将多个系列添加到图表中相关的知识,希望对你有一定的参考价值。

任何人都可以帮助改善我的VBA代码吗?

我想用图表创建一个线图来绘制起点和终点坐标。

目前,我必须复制,粘贴和修改每行的代码。

任何有关如何修改代码以允许任意数量的行的帮助将非常感激。

谢谢,

Sub creatmychart()
    Dim Chart1 As Chart
    Set Chart1 = Charts.Add
    With Chart1
        .ChartType = xlXYScatterLines

        .SeriesCollection.NewSeries
        .SeriesCollection(1).Name = "=members!$A2"
        .SeriesCollection(1).XValues = "=members!$D$2,members!$F$2"
        .SeriesCollection(1).Values = "=members!$E$2,members!$G$2"

        .SeriesCollection.NewSeries
        .SeriesCollection(2).Name = "=members!$A3"
        .SeriesCollection(2).XValues = "=members!$D$3,members!$F$3"
        .SeriesCollection(2).Values = "=members!$E$3,members!$G$3"

        .SeriesCollection.NewSeries
        .SeriesCollection(3).Name = "=members!$A4"
        .SeriesCollection(3).XValues = "=members!$D$4,members!$F$4"
        .SeriesCollection(3).Values = "=members!$E$4,members!$G$4"

        .SeriesCollection.NewSeries
        .SeriesCollection(4).Name = "=members!$A5"
        .SeriesCollection(4).XValues = "=members!$D$5,members!$F$5"
        .SeriesCollection(4).Values = "=members!$E$5,members!$G$5"

    End With
End Sub
答案

只需创建一个循环。尝试以下(假设您的信息最多为11):

Sub creatmychart()
Dim Chart1  As Chart
Set Chart1 = Charts.Add

Dim i       As Long
With Chart1
    .ChartType = xlXYScatterLines
    For i = 1 To 11
        .SeriesCollection.NewSeries
        .SeriesCollection(i).Name = "=members!$A" & i + 1
        .SeriesCollection(i).XValues = "=members!$D$" & i + 1 & ",members!$F$" & i + 1
        .SeriesCollection(i).Values = "=members!$E$" & i + 1 & ",members!$G$" & i + 1
    Next i
End With
End Sub

以上是关于将多个系列添加到图表中的主要内容,如果未能解决你的问题,请参考以下文章

layui当点击增加的时候,将form中的值获取的添加到table行中代码

如何通过单击适配器类中代码的项目中的删除按钮来删除列表视图中的项目后重新加载片段?

d3.js 将图例添加到多线系列图表

如何正确地将多个片段添加到片段过渡?

将多个 Vega/vincent 图表添加到 Folium 弹出窗口

如何将多个图表添加到一个excel的不同工作表中?