我正在尝试过滤具有日期值的Page过滤器。但是当我使用.PivotFilters.Add type:=xlBefore, value:="5/1/2015"
时,我一直收到错误。
我也试过下面的代码:
Dim nd As Long
nd = CLng(Date - 90)
pvt.PivotFields("startdate").ClearAllFilters
pvt.PivotCache.Refresh
pvt.PivotFields("startdate").PivotFilters.Add Type:=xlBefore, Value:=nd
但是现在我得到未找到命名参数。
数据透视表已成功创建但未过滤。
答案 0 :(得分:0)
在Report Filter
过滤中使用透视字段时,它与Row
或Column Label
时不同。请参阅以下代码,在startdate
上的Report Filter
设置过滤条件。
Dim nd As Date
nd = CLng(Date - 90)
Dim pvt As PivotTable
Set pvt = Sheet1.PivotTables(1)
With pvt
.PivotCache.Refresh
Dim pf As PivotField
Set pf = .PivotFields("startdate")
With pf
.ClearAllFilters
Dim pi As PivotItem
For Each pi In pf.PivotItems
If pi < nd Then pi.Visible = True Else: pi.Visible = False
Next
End With
End With