Использование диапазона для ChartObject работает только один раз? VBA - PullRequest
0 голосов
/ 07 апреля 2020

Я пытаюсь создать две сводные диаграммы на двух отдельных листах в файле Excel, используя vba. Я использую диапазон объекта диаграммы, чтобы разместить сводные диаграммы там, где я хочу. Этот метод работает только для одной из сводных диаграмм и является вторым в коде.

Я пытался найти это, но единственные ошибки, которые я могу найти в Интернете, это ошибка диапазона данных, и это не проблема, насколько я могу судить ...

Dim pivotchart_bar As Chart
Dim chart_rng As Range

Set chart_rng = Range("C10:G35")

With chart_rng
    Set pivotchart_bar = ws3.ChartObjects.Add(Left:=.Left, Top:=.Top, Width:=.Width, Height:=.Height).Chart
End With

With pivotchart_bar
    .ChartType = xlColumnClustered
    .SeriesCollection(1).Interior.Color = RGB(0, 188, 255)
    .SeriesCollection(2).Interior.Color = RGB(0, 219, 51)
    .HasTitle = True
    .ChartTitle.Caption = "=ws3!B1"
End With

Приведенный выше код НЕ помещает диаграмму в диапазон C10: G35. Приведенный ниже код помещает диаграмму в диапазон B10: F35, что правильно. Это две диаграммы на двух разных листах, но код должен быть почти одинаковым.

Dim pivotchart_donut As Chart
Dim chart_rng_2 As Range

Set chart_rng_2 = Range("B10:F35")

With chart_rng_2
    Set pivotchart_donut = ws4.ChartObjects.Add(Left:=.Left, Top:=.Top, Width:=.Width, Height:=.Height).Chart
End With

With pivotchart_donut
.ChartType = xlDoughnut
.ApplyDataLabels Type:=xlDataLabelsShowPercent
End With

Я попытался создать новый лист, и я поиграл с диапазоном, и я все еще не уверен, в чем проблема , Я играл с этим в течение недели без каких-либо результатов ... Любая помощь будет потрясающей!

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