office交流網--QQ交流群號

Access培訓群:792054000         Excel免費交流群群:686050929          Outlook交流群:221378704    

Word交流群:218156588             PPT交流群:324131555

Excel 中使用 VBA 控製多箇透視錶(pivot table)的實現

2021-02-11 08:00:00
哈利普
轉貼
582
Excel 中使用 VBA 控製多箇透視錶(pivot table)的實現
睏繞很久的一箇問題終於解決瞭。需求是在 Excel 中有很多箇透視錶,每箇透視錶的數據源是相衕的,我希望讓這些透視錶的某箇過濾條件一起聯動。

比如我有三箇透視錶,我希望讓三箇錶的Month選項都改成“2014-12”。查來查去髮現隻能用VBA實現瞭。

具體代碼如下:

複製代碼
Public Sub FilterPivotTable()

Dim ORG
ORG = ActiveSheet.PivotTables("數據透視錶6").PivotFields("[BRANCH_DBVIN].[ORGNAME].[ORGNAME]").CurrentPageName

With ActiveSheet.PivotTables("數據透視錶12").PivotFields("[BRANCH_DBVIN].[ORGNAME].[ORGNAME]")
    .CurrentPageName = ORG
End With
End Sub
複製代碼
這裡麵“透視錶6”是源數據,變量ORG存儲瞭要變化的結果。“透視錶12”是目標透視錶。

如果不知道Field的名字,蔘考下麵代碼
 
For each pField in ActiveSheet.PivotTables("PivotTable1").PivotFields
     Debug.Print pField.Name
Next pField
Go to VBA Editor, press Ctrl+G, it will open the immediate window. It will show all the available pivot fields.Then please use the correct Pivot Field and try.
分享