在我的数据透视表中,当我使用行标签过滤数据时,它会显示复选框列表,您可以在其中选择要包含的一个或多个或所有项目,此列表包含不再存在的项目。或者,如果您转到数据透视表字段列表并选择该字段并尝试在那里进行过滤,则会显示相同的内容。
也就是说,我曾经在我的Excel电子表格(数据透视表的来源)中的该列中有一个特定项目,一个月前我停止使用该特定项目,因此它不再出现在数据源中。但是,它仍显示在数据透视表中行标签的复选框列表中。我怎样才能删除这些?刷新数据透视表不能解决此问题。已经有很多不同的盒子,这使得阅读起来更加困难。
感谢您的帮助
答案 0 :(得分:27)
取自http://www.contextures.com/xlPivot04.html
从Excel 2007中的数据透视表中清除旧项目
答案 1 :(得分:3)
如果这是您在数据透视表中经常遇到的问题,请考虑创建一个VBA例程来删除旧项目。
粘贴以下代码,改编自Excel Pivot Table Tutorial -- Clear Old Items
Private Sub Workbook_Open()
'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 settings
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
这将在每次打开工作簿时删除所有旧项目,假设已启用宏。