新しいワークシートにピボットテーブルを作成するマクロを記録しました。私は2010バージョンを使用しています。VBAで新しいワークシートにピボットを作成できません
私はマクロを実行したい場合に無効なプロシージャ呼び出しまたは引数」エラー「5実行時エラー」を持っている。コードを参照してください。それは、新しいシートを作成しますので、それは大丈夫?
Range("A1").Select
Sheets.Add
ActiveWorkbook.PivotCaches.Create(SourceType:=xlDatabase, SourceData:= _
"Sheet1!R1C1:R17445C24", Version:=xlPivotTableVersion12).CreatePivotTable _
TableDestination:="Sheet4!R3C1", TableName:="PivotTable1", DefaultVersion _
:=xlPivotTableVersion12
Sheets("Sheet4").Select
Cells(3, 1).Select
With ActiveSheet.PivotTables("PivotTable1").PivotFields("Bnlunit")
.Orientation = xlPageField
.Position = 1
End With
With ActiveSheet.PivotTables("PivotTable1").PivotFields("Period")
.Orientation = xlColumnField
.Position = 1
End With
ActiveWindow.SmallScroll Down:=12
ActiveSheet.PivotTables("PivotTable1").AddDataField ActiveSheet.PivotTables(_
"PivotTable1").PivotFields("Amount"), "Sum of Amount", xlSum
With ActiveSheet.PivotTables("PivotTable1").PivotFields("Hdaccount_agr_3(T)")
.Orientation = xlRowField
.Position = 1
End With
ActiveWindow.SmallScroll Down:=-33
End Sub
'PTable'を設定した後で、なぜ' PivotFields'を修正するときにそれを使用しないのですか?なぜ、「With PTable」を使用せず、他のオブジェクトを内部に入れ子にするのですか? –
合意された、その美しく書かれたコード(私たち全員が見たいと思っている)ではありません。このコードを私たちのチームメンバーと共有して、私がそれをそのまま維持してさらに変更を加えることが容易にできるようにしておきます。 –