0
私はピボットテーブルを作成するためにvbaを使用しています。テーブルにはいくつかのフィルタがあり、フィルタから複数の項目を選択できません。エクセルピボットテーブルフィルタで複数の項目を選択する
私はマクロを記録し、同じ機能を使用したシステムは、コードを生成したとしてではなく、私は以下
"Run-time error '1004': Unable to set the CurrentPage Property of the PivotField Class"
を取得していますが、ピボットテーブルを作成するために使用されるコード、作品は次のとおりです。
Dim objTable As PivotTable
Dim objField As PivotField
' Select the sheet and first cell of the table that contains the data.
ActiveWorkbook.Sheets("All Projects - iNexus").Select
Range("A1").Select
' Create the PivotTable object based on the Employee data on Sheet1.
Set objTable = ActiveSheet.PivotTableWizard
' Specify row and column fields.
Set objField = objTable.PivotFields("Product")
objField.Orientation = xlRowField
Set objField = objTable.PivotFields("SPA Value Category")
objField.Orientation = xlColumnField
' Specify a data field with its summary
' function and format.
Set objField = objTable.PivotFields("2014 FY Value ($)")
objField.Orientation = xlDataField
objField.Function = xlSum
objField.NumberFormat = "$ #,##0"
Set objField = objTable.PivotFields("2015 FY Value ($)")
objField.Orientation = xlDataField
objField.Function = xlSum
objField.NumberFormat = "$ #,##0"
ActiveSheet.Name = "iNexus Pivot"
' Rename the pivot table
With Sheets("iNexus Pivot")
.PivotTables(1).Name = "PivotTable2"
End With
With Sheets("iNexus Pivot").PivotTables("PivotTable2").DataPivotField
.Orientation = xlColumnField
End With
これは私が記録したマクロから複数の項目を選択するために、記録したマクロからもらったコードです:
ActiveSheet.PivotTables("PivotTable2").PivotFields("Project Status"). _
CurrentPage = "(All)"
With ActiveSheet.PivotTables("PivotTable2").PivotFields("Project Status")
.PivotItems("A").Visible = False
.PivotItems("B").Visible = False
.PivotItems("C").Visible = False
End With
ActiveSheet.PivotTables("PivotTable2").PivotFields("Project Status"). _
EnableMultiplePageItems = True
CurrentPageとPivotItemsの両方が問題の原因と思われますが、私のVBAスキルは非常に限られており、問題をデバッグできません。
ありがとうございました。ヘルプをよろしくお願いいたします。
プロジェクトステータスフィールドは、「レポートフィルタ」または「行ラベル」(または「列ラベル」)ですか?コードは少し異なります。 –
@ScottHoltzman:この特定のケースでは、レポートフィルタですが、私もカラムフィルタを持っています。私はレポート、行と列の違いが大きすぎないと仮定しています。 – Yuvaraj