在Excel中删除图表

我试图绘制一些RTD数据,并且偶然在同一张工作表中有数百个图表。 现在我试图撤销我的错误,并删除所有的图表,但我没有太多运气。

我logging了一个macros,我手动删除了其中一个图表,然后尝试编辑代码以遍历所有图表,但是我一直收到一个错误。 我的代码如下:

Sub Macro3() Dim i As Integer For i = 1 To 100 Sheets("Calculations").Select ActiveSheet.ChartObjects("Chart " & CStr(i)).Activate ActiveChart.ChartArea.Select ActiveWindow.Visible = False Selection.Delete Next i End Sub 

当我尝试运行这个,我得到一个错误,说ChartObjects属性不能从Worksheet类访问。

我确信有一个简单的解释/解决scheme,但我已经了解到,VBA有时做的事情有点不同于你所期望的。 所以,我想我的问题是,我怎样才能删除图表,而不必一次通过每一个?

任何帮助,将不胜感激。 谢谢。

试试这个,它会摆脱你的工作表上的所有图表,不pipe他们的名字。

 Sub Macro3() Worksheets("Calculations").ChartObjects.Delete End Sub 

您很可能试图通过不再存在的名称访问图表。 尝试使用ChartObjects(i)通过索引来访问图表。