PDA

View Full Version : delete all charts in workbook



fraser5002
01-06-2009, 04:24 AM
How do i delete all charts in a workbook leaving only worksheets?

Bob Phillips
01-06-2009, 04:35 AM
Do you mean chart sheets?



Dim sh As Object

Application.DisplayAlerts = False

For Each sh In ActiveWorkbook.Sheets

If TypeName(sh) = "Chart" Then

sh.Delete
End If
Next sh

Application.DisplayAlerts = True

Artik
01-06-2009, 05:42 AM
And if you want to remove the charts nested in sheets too, it more or less like this:Sub DeleteAllCharts()

Dim sh As Object
Dim ChrtObj As ChartObject

Application.DisplayAlerts = False

For Each sh In ActiveWorkbook.Sheets

If TypeName(sh) = "Chart" Then
sh.Delete
ElseIf TypeName(sh) = "Worksheet" Then
For Each ChrtObj In sh.ChartObjects
ChrtObj.Delete
Next ChrtObj
End If
Next sh

Application.DisplayAlerts = True
End Sub

Artik