数据透视表列表中的已过时项目

在我的数据透视表中,当我使用行标签过滤数据时,它显示checkbox列表,您可以在其中select要包含的一个或多个或全部项目,此列表包含不再存在的项目。 或者,如果您转到数据透视表字段列表并select该字段并尝试在该处进行筛选,则会显示相同的内容。

也就是说,我曾经在Excel电子表格(数据透视表的源代码)的那一列中有一个特定的项目,一个月前我停止使用这个特定的项目,所以它不再出现在数据源中。 但是,它仍然显示在数据透视表中的行标签的checkbox列表中。 我怎样才能删除这些? 刷新数据透视表并不能解决这个问题。 已经有很多不同的盒子,这使得它更难以阅读。

谢谢你的帮助

取自http://www.contextures.com/xlPivot04.html

在Excel 2007中清除数据透视表中的旧项目

  1. 右键单击数据透视表中的单元格
  2. 点击数据透视表选项
  3. 点击数据标签
  4. 在“保留项目”部分中,从下拉列表中select“无”
  5. 单击确定,然后刷新数据透视表

如果这是您在数据透视表中经常遇到的事情,请考虑创build一个VBA例程来删除旧项目。

  1. AltF11访问VBA编辑器
  2. 在项目浏览器窗口中双击“ThisWorkbook”
  3. 在代码窗口上方的两个下拉列表中,select左侧的“工作簿”和右侧的“打开”。
  4. 从Excel数据透视表教程 – 清除旧项目中粘贴以下代码

    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 

这会在每次打开工作簿时删除任何旧的项目,假设启用了macros。