Pivot table refresh

  • Thread starter Thread starter Guest
  • Start date Start date
G

Guest

Private Sub Worksheet_Change(ByVal Target As Range)

ActiveSheet.PivotTables("PivotTable3").PivotCache.Refresh
ActiveSheet.PivotTables("PivotTable1").PivotCache.Refresh

End Sub

I am using the above macro to refresh two pivot tables on the same
worksheet. the problem is when I change a value on the worksheet and the
macro runs, it seems to run as an endless loop. Please help.
 
Private Sub Worksheet_Change(ByVal Target As Range)

application.enableevents = false
ActiveSheet.PivotTables("PivotTable3").PivotCache.Refresh
ActiveSheet.PivotTables("PivotTable1").PivotCache.Refresh
application.enableevents = true

End Sub

This tells excel to stop looking for changes, then do the refreshing, then start
looking for changes again.
 
Thanks Dave.

I did not seem to have this problem when the pivot tables were on different
worksheets. Do you still recommend I use application.enableevents = false.
 
If you have a worksheet_change event in the worksheet with that other
pivottable, you may want to use it.
 
Thanks again Dave.

Does this mean if I have a worksheet_change event in the worksheet but the
pivottable I am refreshing is another worksheet, I do not need to use
application.enableevents.
 
It could.

I didn't test it, but did it start going into one of those giant loops without
those statements?
Thanks again Dave.

Does this mean if I have a worksheet_change event in the worksheet but the
pivottable I am refreshing is another worksheet, I do not need to use
application.enableevents.
 
Back
Top