0
400行と35列のテーブルを作成し、VBAスクリプトを使用して2列と12列の比較を行うピボットテーブルを作成しました。VBAの列名ではなく、列のインデックスでピボットテーブルを作成できますか
ピボットテーブルを生成する際に、混乱を避けるために列見出しが使用されます。私はVBAで新しいですが、これは私が
ActiveCell.Select
Range("AA3").Select
Selection.CurrentRegion.Select
ActiveWorkbook.PivotCaches.Create(SourceType:=xlDatabase, SourceData:= _
"Practitioners!R3C1:R246C27", Version:=xlPivotTableVersion15). _
CreatePivotTable TableDestination:="Practitioners!R3C29", TableName:= _
"PivotTable8", DefaultVersion:=xlPivotTableVersion15
Sheets("Practitioners").Select
Cells(3, 29).Select
ActiveWorkbook.ShowPivotTableFieldList = False
With ActiveSheet.PivotTables("PivotTable8").PivotFields("Capability")
.Orientation = xlRowField
.Position = 1
End With
With ActiveSheet.PivotTables("PivotTable8").PivotFields("Sub-Capability")
.Orientation = xlRowField
.Position = 2
End With
ActiveSheet.PivotTables("PivotTable8").AddDataField ActiveSheet.PivotTables(_
"PivotTable8").PivotFields("Grade"), "Count of Grade", xlCount
ActiveSheet.PivotTables("PivotTable8").AddDataField ActiveSheet.PivotTables(_
"PivotTable8").PivotFields("06-Feb-2017"), "Count of 06-Feb-2017", xlCount
私のエラーにすべてを呼び出す方法ですが、私の列ヘッダは毎週変わり、それがあるので、ヘッダーの名前を変更することはVBAのコードが動作しないことを意味しますもはや "06-Feb-2017"ではありません。
は、私は私のコードで絶対セルへの参照を作ってみましたが、エラーを思い付いた実行時エラー「1004、 ピボットテーブルクラスのPivotFieldsプロパティを取得できません
絶対セル参照(すなわちB3)としてPivotFields
を参照する方法はありますか?
が、残念ながら、私は別の実行時エラーを受け取る1004:あなたのコード(セットPvtTbl ...)の9行目のワークシートクラスのピボットテーブルプロパティを取得できません – alex
@alexはあなたが持っている 'PivotTable'セット - アップ?ワークシート名は何ですか? 'Worksheets'とPivotTable'の名前がコード –
と一致することを確認してください。上記のコードとセットアップを更新しました。 – alex