VBA – Excel强制重新启动

我有我的代码重大问题,应该重置工作表,不closures整个工作簿,并强制重新启动。 这不是一个问题,并且只是因为我添加了从On Error Resume Next开始的最后一段代码而发生。

 Sub Reset() Application.ScreenUpdating = False Dim ws As Worksheet For Each ws In ThisWorkbook.Worksheets If ws.Name = "Set Up" Or ws.Name = "Report" Then Else: Application.DisplayAlerts = False ws.Delete End If Next Worksheets("Report").Cells.ClearContents On Error Resume Next Application.DisplayAlerts = False ThisWorkbook.Charts.Delete Application.DisplayAlerts = True On Error GoTo 0 End Sub 

提前致谢

这会删除workhseet中的图表,比如activesheet:

 Sub DeleteallCharts() Dim chtObj As ChartObject For Each chtObj In ActiveSheet.ChartObjects chtObj.Delete Next End Sub 

如果要删除工作簿中的所有图表,则必须按照以下方式循环显示工作表:

 Sub DeleteallChartsInWorkbook() Dim chtObj As ChartObject Dim WS As Worksheet For Each WS in Thisworkbook.Worksheets For Each chtObj In WS.ChartObjects chtObj.Delete Next chtObj Next WS End Sub 

如果你有图表,那么你应该使用下面的代码:

 Sub DeleteChartSheets() Dim ch As Chart For Each ch In ThisWorkbook.Charts ch.Delete Next End Sub