Как удалить пустые значения из трехмерной диаграммы с помощью VBA

#excel #vba

Вопрос:

Итак, изначально у меня есть 2D-диаграмма области, которую я создаю с помощью VBA, которая выглядит следующим образом

введите описание изображения здесь

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

 Dim i As Long
Dim cht As Chart
Dim lgd As Legend
 Set cht = ActiveChart
   Set lgd = cht.Legend
   For i = lgd.LegendEntries.Count To 1 Step -1
 
         Select Case cht.SeriesCollection(i).Name
 
         Case "Total", ""
                 lgd.LegendEntries(i).Delete
 
          Case "Total", " "
                 lgd.LegendEntries(i).Delete
 
         Case Else
               ' do nothing
         End Select
 
   Next
 

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

из этого

 ActiveSheet.Shapes.AddChart2(276, xlArea).Select
 

к этому

 ActiveSheet.Shapes.AddChart2(276, xl3DArea).Select
 

Затем я получаю следующую диаграмму, которая показывает мне все на моем столе, и я хочу, чтобы она скрывала все, что является пустым местом или пустой ячейкой.

enter image description here

I use the exact same code to create the 2D and the 3D chart and I’m not sure why for the 2D chart it hides the empty values correctly but for the 3D chart it breaks and gives me that horrible chart.