我正在尝试在VBA中集成动力枢轴和枢轴图的创建,并且已经发挥了重要作用 . 但是,我遇到了一个我似乎无法克服的问题
我创建了新的工作表,我创建了Pivot并将其导出为PDF . 完成后,我删除了pivottable和工作表:
Sub DeleteAllPivotTables()
PURPOSE: Delete all other sheets and pivots
Dim sht As Worksheet
Dim pvt As PivotTable
Application.ScreenUpdating = False
Application.DisplayAlerts = False
For Each sht In ActiveWorkbook.Worksheets
If sht.Name <> "Output" Then
If sht.Name <> "Syntax" Then
For Each pvt In sht.PivotTables
pvt.TableRange2.Clear
Next pvt
sht.Delete
End If
End If
Next sht
Application.DisplayAlerts = True
Application.ScreenUpdating = True
End Sub
当我删除没有用于删除数据透视表的宏部分的工作表时,我遇到运行时1004错误 . 据我所知,因为已经采用了枢轴名称“PivotTable1”而没有用宏删除它 . 工作表已被删除后,如何解决此问题?
提前致谢!
2 回答
清除它时,实际上并没有删除数据透视表 . 如果要删除它,则需要使用this或this等解决方案 . 我已更新您的代码以包含这些解决方案 .
希望能帮助到你!
1004
是在VBA中经常出现的错误 . 在您的情况下,您要删除Worksheets
,而不检查剩下多少Sheets
.如果您只剩下1
Sheet
(ASheet
是Worksheet
或Chart
)并删除它,则会出现错误1004
. 要避免它,请确保Sheets.Count
大于1,然后再删除: