if you are able to refresh manually, the code should work.
If the name isn't correct it will fail. Try this instead, if you're not sure about the name.
Please change range("A3") to a cell inside you pivottable.
brPrivate Sub Worksheet_Activate() ActiveSheet.Range("A3").PivotTable.RefreshTable End Sub
Tommy Bak