Создание новой серии в диаграмме, где данные находятся в другой таблице - PullRequest
0 голосов
/ 23 января 2020

Я делаю диаграмму, в которой меняется число серий, и все серии рисуют данные из разных листов, которые не являются активными. График создается на главном рабочем листе, называемом «graphsName», данные для каждой серии находятся на отдельном листе, который переименован в «targetSheetName» более крупным сабом.

Сейчас у меня есть следующее:

Public Sub GraphingTemperature(ByVal targetSheetName As String, ByVal graphsName As String)

Sheets(graphsName).Select
Application.Run "getUnits"
ActiveSheet.ChartObjects("Chart 1").Activate
With ActiveChart.SeriesCollection.NewSeries
     .Name = Sheets(targetSheetName).Range("C1")
    .Values = Sheets(targetSheetName).Range(Range("C5"), Range("C5").End(xlDown))
    .XValues = Sheets(targetSheetName).Range(Range("D5"), Range("D5").End(xlDown))
End With



End Sub

Эта функция вызывается более длинной подпрограммой, которая создала диаграмму, а затем передает этой функции имя листа, содержащее данные для этой конкретной серии.

Я не хотел использовать структуру

ActiveChart.SeriesCollection.NewSeries
    ActiveChart.FullSeriesCollection(1).Name

, потому что количество серий постоянно меняется.

Похоже, проблема возникает, когда я пытаюсь направить ее на значения и значения x ряда. Я бы хотел, чтобы серия графиков начиналась с 5-й строки столбца и продолжалась до последней записи. Кто-нибудь знает правильный синтаксис, когда я хочу получить данные серии из другого рабочего листа и передаю имя рабочего листа в подпрограмму?

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...