Я хочу получить доступ к новым диаграммам, добавленным в MS Office 2016, в частности к каскадной диаграмме, через VBA.
Я записал макрос при добавлении его вручную, но макрос, похоже, не распознает тип диаграммы.
Я хочу получить доступ к новым диаграммам, добавленным в MS Office 2016, в частности к каскадной диаграмме, через VBA.
Я записал макрос при добавлении его вручную, но макрос, похоже, не распознает тип диаграммы.
Я не использую MS 2016, но я думаю, что один из способов найти тип диаграммы для будущего использования — это разместить каскадную диаграмму на листе, а затем запустить быструю подпрограмму, которая возвращает Chart.ChartType
для каждой диаграммы на листе. Это должно вернуть целочисленное значение, которое затем можно использовать для установки других диаграмм в этот тип. код должен быть примерно таким:
MsgBox(ActiveSheet.ChartObjects(1).Chart.ChartType)
В последней сборке программы предварительной оценки Office 365 средство записи макросов поддерживает каскадные диаграммы. Вот код, записанный, когда я добавлял каскадную диаграмму и устанавливал три столбца на итоги:
Sub Macro1()
'
' Macro1 Macro
'
'
ActiveSheet.Shapes.AddChart2(395, xlWaterfall).Select
ActiveSheet.ChartObjects("Chart 1").Activate
ActiveChart.FullSeriesCollection(1).Select
ActiveChart.FullSeriesCollection(1).Points(1).Select
ActiveChart.FullSeriesCollection(1).Points(1).IsTotal = True
ActiveChart.FullSeriesCollection(1).Points(4).Select
ActiveChart.FullSeriesCollection(1).Points(4).IsTotal = True
ActiveChart.FullSeriesCollection(1).Points(7).Select
ActiveChart.FullSeriesCollection(1).Points(7).IsTotal = True
Application.CommandBars("Accessibility").Visible = False
Range("A1").Select
End Sub
Обратите внимание, что многие функции новых диаграмм, в том числе водопады, недоступны с помощью VBA и даже с помощью обычного пользовательского интерфейса. Например, вы можете установить минимум и максимум по вертикальной оси, но не основную единицу (между делениями).
xlWaterfall
- person Rory   schedule 30.06.2016