Tommy,
Someone posted the exact same question on 12/31. I xref'd this post but Mike (aka Ekim) xref'd
a different URL that had some very helpful ideas.
Based on info from that post - I did the following - which handled my grouping trouble-makers without erroring. You might try it on your troublemakers and see if it stands up to them. I don't know how this responds to calculated fields (I've yet to need them).
<font face=Courier New><SPAN style="color:#007F00">'¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯</SPAN>
<SPAN style="color:#00007F">Sub</SPAN> CleanPivotItems2()
<SPAN style="color:#007F00">'______________________________________________________________________________</SPAN>
<SPAN style="color:#007F00">' ***********************</SPAN>
<SPAN style="color:#007F00">' ***** XL2002 ONLY *****</SPAN>
<SPAN style="color:#007F00">' ***********************</SPAN>
<SPAN style="color:#007F00">' Even after a Refresh, a PT retains options for checking / unchecking</SPAN>
<SPAN style="color:#007F00">' that are no longer part of the source data set. This macro goes</SPAN>
<SPAN style="color:#007F00">' through all pivot tables on the active sheet and cleans off</SPAN>
<SPAN style="color:#007F00">' any PivotItems that no longer have corresponding records in the source</SPAN>
<SPAN style="color:#007F00">' data block.</SPAN>
<SPAN style="color:#007F00">' Note: This only needs to be run once. After .MissingItemsLimit has</SPAN>
<SPAN style="color:#007F00">' been set to xlMissingItemsNone, a simple REFRESH will remove dead</SPAN>
<SPAN style="color:#007F00">' checkbox items.</SPAN>
<SPAN style="color:#00007F">Dim</SPAN> pt <SPAN style="color:#00007F">As</SPAN> PivotTable
<SPAN style="color:#00007F">For</SPAN> <SPAN style="color:#00007F">Each</SPAN> pt <SPAN style="color:#00007F">In</SPAN> ActiveSheet.PivotTables
pt.PivotCache.MissingItemsLimit = xlMissingItemsNone
pt.PivotCache.Refresh
<SPAN style="color:#00007F">Next</SPAN> pt
<SPAN style="color:#00007F">Set</SPAN> pt = <SPAN style="color:#00007F">Nothing</SPAN>
<SPAN style="color:#00007F">End</SPAN> <SPAN style="color:#00007F">Sub</SPAN>
</FONT>
Regards,