2015-01-15 2 views
1

가 여기 내 코드 표시 오류가 언제 발생했는지 알 수 있습니다. 나는 다른 코드를 만들려고 노력하지만 그것은 계속 나타나지 않습니다.새로 고침 피벗 오류를

Sub Atualiza_pivots() 

On Error GoTo Err 

ActiveWorkbook.RefreshAll 

Exit Sub 

Err: MsgBox "Há pivots com erro, verifique." 

End Sub 

감사합니다.

답변

0

들으을위한 도움말 D_Zab

Sub Atualiza_pivots() 

Dim wks As Worksheet 
Dim pvt As PivotTable 

For Each wks In Worksheets 
    For Each pvt In wks.PivotTables 
      On Error GoTo Err 
      pvt.PivotCache.Refresh 
    Next pvt 
Next wks 
Exit Sub 
Err: MsgBox pvt & " com erro." 
End Sub 
2

RefreshAll 방법 만 BackgroundQuery가 true로 설정되어있는 경우, 각 테이블을 통해 루프이 시도하고 수동으로 새로 고침 작동합니다

Sub Refresher() 

Dim wks As Worksheet 
Dim pvt As PivotTable 

For Each wks In Worksheets 
    For Each pvt In wks.PivotTables 
     If pvt.PivotCache.BackgroundQuery = False Then 
      pvt.PivotCache.BackgroundQuery = True 
      pvt.RefreshTable 
      pvt.PivotCache.BackgroundQuery = False 
     Else 
      pvt.RefreshTable 
     End If 
    Next pvt 
Next wks 

End Sub 
+0

들으을 위해 도와 줘,하지만 나에게 완벽하게 달려있는 또 다른 일을한다. –

관련 문제