Я собрал несколько VBA для сводной таблицы, чтобы просто указать, сколько CN есть на человека из исходной таблицы. Возможно, есть более простой способ сделать это, но у меня должен быть код, поскольку я планирую добавить этот код в макрос. Я добавил фотографию своей исходной таблицы, а также то, на что я пытаюсь сделать свою сводную таблицу похожей. Я получаю сообщение об ошибке в строке [With ws.PivotTables ("PivotTable1"). PivotFields ("Type")]: Невозможно получить свойство PivotFields класса PivotTable. Есть идеи?
Пример фотографии таблицы / сводной таблицы Спасибо!
Sub PivotTableTest2 ()
Dim ws As Worksheet
Dim wb As Workbook
Dim pc As PivotCache
Dim pt As PivotTable
Sheets("Supplier Quality").Activate
Set ws = ActiveSheet
Set wb = ThisWorkbook
Set pc = wb.PivotCaches.Create(SourceType:=xlDatabase, SourceData:=ws.Range("Table2"))
Set pt = ws.PivotTables.Add(PivotCache:=pc, tabledestination:=ws.Range("P1"), TableName:="PivotTable1")
'
With ws.PivotTables("PivotTable1").PivotFields("Type")
.Orientation = xlRowField
.Position = 1
End With
With ws.PivotTables("PivotTable1").PivotFields("Task Owner2")
.Orientation = xlColumnField
.Position = 1
End With
ws.PivotTables("PivotTable1").AddDataField ActiveSheet.PivotTables( _
"PivotTable1").PivotFields("Type"), "Sum of Tasks Overdue", xlSum
End Sub