我正在使用代码刷新数据透视表,并且可以正常工作,但是我被错误处理程序卡住了,它给了我:
这是我正在使用的代码:
Sub RefreshAllPivots()
On Error GoTo Errhandler
Dim pivotTable As pivotTable
For Each pivotTable In ActiveSheet.PivotTables
pivotTable.RefreshTable
Next
Errhandler:
MsgBox "Error Refreshing " & pivotTable.Name
MsgBox "All Pivots Refreshed"
End Sub
非常感谢
最佳答案
仅在出现错误时才显示错误消息。此外,您可能希望检查在分配数据透视表对象时是否发生了错误:
Sub RefreshAllPivots()
On Error GoTo ErrHandler
Dim pt As PivotTable
For Each pt In ActiveSheet.PivotTables
pt.RefreshTable
Next pt
ErrHandler:
If err Then
If Not pt Is Nothing Then
MsgBox "Error Refreshing " & pt.Name
Else
MsgBox "Unexpected error"
End If
Else
MsgBox "All Pivots Refreshed"
End If
End Sub
请注意,我将您的
pivotTable
变量重命名为pt
-使用保留字作为变量名不是一个好习惯。