【发布时间】:2012-02-20 12:19:13
【问题描述】:
如何使用 VBA 在 Excel 2003 中过滤数据透视表?
在 Excel 2007 中我可以运行此宏,但在 XL 2003 中未实现 PivotFilters。
Dim ws As Worksheet: Set ws = Sheets("Sheet1")
ws.PivotTables("PivotTable1").PivotFields("Date").PivotFilters.Add _
Type:=xlSpecificDate, Value1:="26/01/2012"
更新: 我收到错误“运行时错误'1004”。无法设置 PivotItem 类的 Visible 属性。
子过滤器() 将 PvtItem 调暗为 PivotItem 将 ws 作为工作表进行调暗
Set ws = Sheets("pivot")
'~~> Show All
For Each PvtItem In ws.PivotTables("PivotTable1").PivotFields("Date").PivotItems
PvtItem.Visible = True
Next
'~~> Show Only the relevant
For Each PvtItem In ws.PivotTables("PivotTable1").PivotFields("Date").PivotItems
If PvtItem.Value <> "26/01/2012" Then PvtItem.Visible = False '<-- error here
Next
结束子
【问题讨论】:
标签: excel excel-2003 vba