返回首页
当前位置: 主页 > Excel教程 > Excel2003教程 >

Excel数据透视表-如何清除原有数据项

时间:2017-04-28 16:29来源:Office教程学习网 www.office68.com编辑:麦田守望者

 原有的数据项仍保留在数据透视字段下拉框中。
      数据透视表的数据源可能改变, 导致字段下拉列表中有些无用的数据项存在,例如有些销售人员已经离开公司, 但他们的名字仍然在数据透视表的数据项中存在。
      尽管你每次更新数据透视表后,这些名字仍然与新名字同时显示出来. 在下面的列表中, 杨建新已经被刘艳代替,但他的名字仍然存在。

 

 
      手动清除原有的数据项
      从列表中手动清除原有的数据项操作方法:
      1. 将数据透视字段拖拉到数据透视表以外的区域. 
      2. 点击数据透视表工具栏上的更新按钮 
      3. 将数据透视字段拖拉回到数据透视表区域 

 

  
      编写程序清除原有的数据项 -- Excel 2002或更高版本
 
      在Excel 2002或更高版本中, 你可以编写程序改变数据透视表属性,防止遗漏显示数据项或清除已经显示的数据项. 
Sub DeleteMissingItems2002All()
'防止数据透视表中显示无用的数据项
'在 Excel 2002 或更高版本中
'如果无用的数据项已经存在,
  '运行这个宏可以更新
Dim pt As PivotTable
Dim ws As Worksheet
 
For Each ws In ActiveWorkbook.Worksheets
  For Each pt In ws.PivotTables
    pt.PivotCache.MissingItemsLimit = xlMissingItemsNone
  Next pt
Next ws
 
End Sub     
  
      编写程序清除原有的数据项-- Excel 97/Excel 2000
 
      在较早的Excel版本中, 运行下列代码可以清除数据透视表下拉表的原有数据项. 
Sub DeleteOldItemsWB()
'清除数据透视表中无用的数据项
' 单位MSKB (202232)
Dim ws As Worksheet
Dim pt As PivotTable
Dim pf As PivotField
Dim pi As PivotItem
On Error Resume Next
For Each ws In ActiveWorkbook.Worksheets
  For Each pt In ws.PivotTables
    pt.RefreshTable
    For Each pf In pt.VisibleFields
      If pf.Name <> "Data" Then
        For Each pi In pf.PivotItems
          If pi.RecordCount = 0 And _
            Not pi.IsCalculated Then
            pi.Delete
          End If
        Next
      End If
    Next
  Next
Next
End Sub

------分隔线----------------------------
标签(Tag):EXCEL数据透视表 清除原有数据项
------分隔线----------------------------
推荐内容
猜你感兴趣