Как изменить подтип Chart из кода VBA - PullRequest
1 голос
/ 28 апреля 2020

Я создаю диаграммы из некоторых данных:

ActiveSheet.Shapes.AddChart2(297, xlColumnStacked).Select

Но в Excel есть разные подтипы диаграммы xlColumnStacked ...

d

Мне нужно показать второй, а не по умолчанию.

Это должно быть программно, а не вручную.

Я попытался записать макрос и посмотреть, что делает изменение , но ничего не записывается ... Я также пытался загрузить из шаблонов, но они не работают так, как мне нужно.

Спасибо за вашу поддержку.

Ответы [ 2 ]

1 голос
/ 29 апреля 2020

Они оба выглядели как сложенные столбцы. VBA не имеет подтипов диаграммы и управляет типом диаграммы, используя этот синтаксис:

ActiveChart.ChartType = xlColumnClustered
ActiveChart.ChartType = xlColumnStacked
ActiveChart.ChartType = xlColumnClusteredStacked100

Обозреватель объектов VBA показывает все возможности.

1 голос
/ 28 апреля 2020

Я думаю, вам нужно изменить .ChartTyp
, например:

 ActiveChart.ChartType = 52

Вот список правильных значений https://bettersolutions.com/excel/charts/vba-chart-types.htm

Если вы хотите чтобы переключить данные оси x и оси y, попробуйте выполнить одно из следующих действий:

ActiveChart.PlotBy = xlColumns

ActiveChart.PlotBy = xlRows

Надеюсь, я помог:)

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