У меня есть подпрограмма, которая обновляет график с сериями на основе таблицы.Тем не менее, первая строка таблицы пуста, и я хочу опустить это из моей коллекции серии.Я думал о создании диапазона в пределах своего диапазона базы данных и использовал его.Вот мой код:
Sub UpdateGraph()
Dim rng_pf As Variant, rng_bm As Variant, rng_date As Variant,
Dim lr as integer
' Defining ranges
With ThisWorkbook.Sheets("Time series")
lr = .ListObjects(1).ListColumns(1).Range.Rows.Count + 6 ' This corresponds to the last row in my table
rng_pf = .ListObjects(1).ListColumns("PF").DataBodyRange(2, lr) ' <-- This doesnt work
rng_bm = .ListObjects(1).ListColumns("BM").DataBodyRange(2, lr)
rng_date = .ListObjects(1).ListColumns("Date").DataBodyRange(2, lr)
End With
' Updating chart
With Sheets(1).ChartObjects("Chart 1").Chart
.FullSeriesCollection(1).Values = rng_pf
.FullSeriesCollection(2).Values = rng_bm
.FullSeriesCollection(1).XValues = rng_date
.FullSeriesCollection(2).XValues = rng_date
End With
End sub
Я думал о создании массива, основанного на диапазоне данных, а затем об удалении первого элемента массива, но это кажется излишним.При запуске моего кода я получаю, что rng_pf Empty
.Мой стол: ![enter image description here](https://i.stack.imgur.com/x18wB.png)