Как контролировать диапазон источников диаграммы Excel через VBA - PullRequest
0 голосов
/ 14 февраля 2019

Я хочу иметь возможность контролировать и обновлять источник (диапазон) диаграммы Excel через VBA.В конечном итоге диаграмма будет представлена ​​в презентации PowerPoint, и весь процесс обновится автоматически.

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

ActiveChart.SetSourceData (Sheets("Sheet2").Range("E5:E9"))

Текущий скрипт не запускается.Но я просто хочу «установить» исходный диапазон для конкретной диаграммы, предпочтительно доступ по имени.И если добавляются новые точки данных, я просто запускаю сценарий снова, и новый диапазон будет верхней ячейкой в ​​столбце до .End(xlDown)

1 Ответ

0 голосов
/ 14 февраля 2019

Спасибо, ребята!Мне удалось найти решение, которое работает для меня, и сделало его функцию, если у кого-то еще есть такая же проблема.Ничего особенного, но вы можете установить диапазон, например "A2: A14", и график обновится с новым диапазоном.Функция вызывается по имени листа, имени диаграммы и диапазону, как показано ниже:

Call changecharts("Sheet2", "Chart1", "A2:A11")

Public Function changecharts(sheeet As String,chartname As String, rnge As String)

Worksheets(sheeet).ChartObjects(chartname).Activate

With ActivateChart
ActiveChart.SetSourceData Source:=ActiveWorkbook.Sheets(sheeet).Range(rnge)
End With


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