This was a while back now, but i recall that part of the proble was caused by having some records that had been counted in the past by the pivot table under the category of "All"
the,category on these records were subsequently changed to something else to prevent, but the pivot table still made a reference to them.
i the used this macro below to remove any categories in the pivot table which were no longer applicable(including the second "ALL")
------------------------------------------------------------------------------------
Sub pivotDeleteMissingItems()
'prevents unused items in non-OLAP PivotTables
'pivot table tutorial by contextures.com
Dim pt As PivotTable
Dim ws As Worksheet
Dim pc As PivotCache
'change the settinET
For Each ws In ActiveWorkbook.Worksheets
For Each pt In ws.PivotTables
pt.PivotCache.MissingItemsLimit = xlMissingItemsNone
Next pt
Next ws
'refresh all the pivot caches
For Each pc In ActiveWorkbook.PivotCaches
On Error Resume Next
pc.Refresh
Next pc
End Sub