Почему мои данные LineChart отображаются неправильно? - PullRequest
0 голосов
/ 06 июня 2018

Я работал над макросом Excel, чтобы отобразить некоторые данные в таблице, но внезапно он теперь отображает 7 различных серий вместо 2 ...

Код для графика:

Public Sub GraphResults()
Dim ws As Worksheet
Dim LineGraph As Chart
Set ws = ActiveSheet
Set LineGraph = Charts.Add

    With LineGraph
        .SetSourceData Source:=ws.Range("B29:B35,G29:G35")
        .ChartType = xlLineMarkers
        .HasTitle = True
        .ChartTitle.Text = ""
        .Axes(xlCategory, xlPrimary).HasTitle = True
        .Axes(xlCategory, xlPrimary).AxisTitle.Characters.Text = "X-axis"
        .Axes(xlValue, xlPrimary).HasTitle = True
        .Axes(xlValue, xlPrimary).AxisTitle.Characters.Text = "Y-axis"
        .SeriesCollection(1).XValues = ws.Range("A29:A35")
    End With


End Sub

Вместо того, чтобы строить 2 строки, где одна строка имеет Y-значения B29: B35, а другая имеет Y-значения G29: G35, она отображает 7 линий

Каждая строка имеет значение B и значение G.Например, серия 1 содержит 2 пункта: B29 и G29.Серия 2 содержит 2 точки B30 и G30.Я не изменил код вообще.Фактически, когда я открываю макрос с момента его последнего сохранения, отображаемый график содержит только 2 строки!Когда я перезапущу макрос, график изменится на 7 строк.

Что здесь происходит? ...

1 Ответ

0 голосов
/ 06 июня 2018

Ваш график отображает значения по строкам, а не по столбцам, как вы хотите.См. SetSourceData Method для получения дополнительной информации.

Добавьте PlotBy:=xlColumns к строке .SetSourceData для автоматического построения по столбцам.

...