Pivot Table refresh based on source data update.

jordanbuchan359

New Member
Joined
Jun 15, 2018
Messages
15
Hi,

I'm trying to use VBA to refresh a pivot table when its data source changes. However, to make things complicated, the data source is a look up table pulling data from another pivot table (lets call this the master pivot).

I first attempted to use worksheet_change, but unfortunately this only captures manual changes.. not formula calculations. I then attempted to use the Worksheet_Calculate:

Code:
Private Sub Workbook_Open()
    PrevVal = Sheet6.Range("G3").Value
End Sub


Code:
Private Sub Worksheet_Calculate()
    If Range("G3").Value <> PrevVal Then
        Worksheets("Pivots").PivotTables("Pivot2").RefreshTable
        PrevVal = Range("G3").Value
    End If
End Sub

This method does capture the formula change (verified with MsgBox), but fails as soon as I add in the code for refreshing the Pivot table:

1601925161792.png


Not sure how best to proceed with this. Any help would be appreciated!
 
Last edited by a moderator:

Excel Facts

Which came first: VisiCalc or Lotus 1-2-3?
Dan Bricklin and Bob Frankston debuted VisiCalc in 1979 as a Visible Calculator. Lotus 1-2-3 debuted in the early 1980's, from Mitch Kapor.

Forum statistics

Threads
1,215,039
Messages
6,122,799
Members
449,095
Latest member
m_smith_solihull

We've detected that you are using an adblocker.

We have a great community of people providing Excel help here, but the hosting costs are enormous. You can help keep this site running by allowing ads on MrExcel.com.
Allow Ads at MrExcel

Which adblocker are you using?

Disable AdBlock

Follow these easy steps to disable AdBlock

1)Click on the icon in the browser’s toolbar.
2)Click on the icon in the browser’s toolbar.
2)Click on the "Pause on this site" option.
Go back

Disable AdBlock Plus

Follow these easy steps to disable AdBlock Plus

1)Click on the icon in the browser’s toolbar.
2)Click on the toggle to disable it for "mrexcel.com".
Go back

Disable uBlock Origin

Follow these easy steps to disable uBlock Origin

1)Click on the icon in the browser’s toolbar.
2)Click on the "Power" button.
3)Click on the "Refresh" button.
Go back

Disable uBlock

Follow these easy steps to disable uBlock

1)Click on the icon in the browser’s toolbar.
2)Click on the "Power" button.
3)Click on the "Refresh" button.
Go back
Back
Top