在此先感谢任何愿意提供帮助的人。

我将这段代码放在一起以选择表的非连续单元格来创建图形(表的行数各不相同)

Sub graphB()
  Dim sht As Worksheet
  Dim LastRow As Long

  Set sht = ThisWorkbook.Worksheets("CF_total")

  LastRow = sht.Range("E2").CurrentRegion.Rows.Count

  ActiveSheet.Shapes.AddChart.Select

  Set myRange = Union(Range(sht.Cells(2, 5), sht.Cells(LastRow, 5)), Range(sht.Cells(2, 12), sht.Cells(LastRow, 12)))

  ActiveChart.SetSourceData Source:=myRange
  ActiveChart.ChartType = xlPie
End Sub


但是现在我决定隐藏工作表的第12列(其中包含我要绘制的数据),它不再起作用。关于如何解决这个问题有什么想法吗?
谢谢!

最佳答案

为此,VBA是

ActiveChart.PlotVisibleOnly = False


有关更多信息,请参见Chart.PlotVisibleOnly Property

08-20 03:10