原有的數據項仍保留在數據透視字段下拉框中。
數據透視表的數據源可能改變,導致字段下拉列表中有些無用的數據項存在,例如有些銷售人員已經離開公司,但他們的名字仍然在數據透視表的數據項中存在。
盡管你每次更新數據透視表后,這些名字仍然與新名字同時顯示出來.在下面的列表中,楊建新已經被劉艷代替,但他的名字仍然存在。
手動清除原有的數據項
從列表中手動清除原有的數據項操作方法:
1. 將數據透視字段拖拉到數據透視表以外的區域.
2. 點擊數據透視表工具欄上的更新按鈕
3. 將數據透視字段拖拉回到數據透視表區域
編寫程序清除原有的數據項–Excel2002或更高版本
在Excel2002或更高版本中,你可以編寫程序改變數據透視表屬性,防止遺漏顯示數據項或清除已經顯示的數據項.
SubDeleteMissingItems2002All()
‘防止數據透視表中顯示無用的數據項
‘在Excel2002或更高版本中
‘如果無用的數據項已經存在,
‘運行這個宏可以更新
DimptAsPivotTable
DimwsAsWorksheet
ForEachwsInActiveWorkbook.Worksheets
ForEachptInws.PivotTables
pt.PivotCache.MissingItemsLimit=xlMissingItemsNone
Nextpt
Nextws
EndSub
編寫程序清除原有的數據項–Excel97/Excel2000
在較早的Excel版本中,運行下列代碼可以清除數據透視表下拉表的原有數據項.
SubDeleteOldItemsWB()
‘清除數據透視表中無用的數據項
‘單位MSKB(202232)
DimwsAsWorksheet
DimptAsPivotTable
DimpfAsPivotField
DimpiAsPivotItem
OnErrorResumeNext
ForEachwsInActiveWorkbook.Worksheets
ForEachptInws.PivotTables
pt.RefreshTable
ForEachpfInpt.VisibleFields
Ifpf.Name<>"Data"Then
ForEachpiInpf.PivotItems
Ifpi.RecordCount=0And_
Notpi.IsCalculatedThen
pi.Delete
EndIf
Next
EndIf
Next
Next
Next
EndSub