0
我有一個數據透視表並記錄在宏中。手動執行時,我能夠顯示所需的輸出,但是當我運行我的宏時,數據透視表顯示不同。excel宏創建數據透視表與列標籤
這是我的預期產出。
Count of Date Occurred Column Labels
Row Labels 17.07.2017 18.07.2017 19.07.2017 20.07.2017 21.07.2017 22.07.2017 23.07.2017 24.07.2017 Grand Total
100117975 1 1
100117976 1 1
100117977 1 1
100117979 1 1
100117982 1 1
100117988 1 1
100117991 2 2 2 1 1 8
以下是宏中的記錄代碼。
ActiveWorkbook.PivotCaches.Create(SourceType:=xlDatabase, SourceData:= _
"DataDump!R1C1:R373C4", Version:=xlPivotTableVersion14).CreatePivotTable _
TableDestination:="DataResult!R1C1", TableName:="PivotTableResult", _
DefaultVersion:=xlPivotTableVersion14
Sheets("DataResult").Select
Cells(1, 1).Select
With ActiveSheet.PivotTables("PivotTableResult").PivotFields("Date Occurred")
.Orientation = xlColumnField
.Position = 1
End With
With ActiveSheet.PivotTables("PivotTableResult").PivotFields("ID")
.Orientation = xlRowField
.Position = 1
End With
ActiveSheet.PivotTables("PivotTableResult").AddDataField ActiveSheet.PivotTables(_
"PivotTableResult").PivotFields("Date Occurred"), "Count of Date Occurred", xlCount
以下是宏的輸出。
Row Labels Count of Date Occurred
100117975 1
100117976 1
100117977 1
100117979 1
100117982 1
100117988 1
100117991 8
100117992 2
100117993 7
任何幫助將不勝感激。
請嘗試在AddDataField行之後移動第一個With/End With塊。 – pnuts
我想這樣做,但拿到了運行時錯誤450 'ActiveSheet.PivotTables( 「PivotTableResult」)。AddDataField 隨着ActiveSheet.PivotTables( 「PivotTableResult」)。透視字段( 「ID」) .Orientation = xlRowField 。位置= 1點 結束隨着 ActiveSheet.PivotTables(_ 「PivotTableResult」)。透視字段( 「日期發生」), 「日期計數發生」,xlCount' – SlickTrick
'ActiveSheet.PivotTables( 「PivotTableResult」)。AddDataField ActiveSheet.PivotTables (_ 「PivotTableResult」)。PivotFields(「發生的日期」),「發生的日期計數」,xlCount'全部都是一行('_'「延伸」它 - 只是導致它包裝) xlCount',開始一個新行。 – pnuts