2016-03-06 121 views
0

我是新來的VBA VBA代碼...我試圖創建一個單一的過濾器在數據透視表單過濾

根據交易類型,我想篩選出「付款」

下面是我的代碼,但是當它到達pf.Current page =「付款」時出錯。

Sub 

Dim pf As PivotField 

Set pf = ActiveSheet.PivotTables("GENERIC TRANSACTION DETAIL").PivotFields(_ 
"transaction type") 

pf.CurrentPage = "payment" 

End Sub 

謝謝你的任何反饋

+0

「交易類型」是頁面字段嗎? [CurrentPage屬性](https://msdn.microsoft.com/en-us/library/office/ff197857.aspx)僅對頁面字段有效。另外,Sub需要有一個名字 - 僅僅使用'Sub'就不會編譯 – barrowc

回答

0

你通過Debosmit雷提到"transaction type"可能不是一個頁字段。 您可以使用流動代碼執行單個項目過濾器。

Sub SingleFilter() 
    Dim item As PivotItem 
    With ActiveSheet.PivotTables("GENERIC TRANSACTION DETAIL").PivotFields("transaction type") 
     .ClearAllFilters 
     For Each item In .PivotItems 
      If Not item.Name <> "payment" Then 
       item.Visible = False 
      End If 
     Next item 
    End With 
End Sub 
相關問題