Я пытаюсь написать макрос для создания сводной диаграммы. В листе в столбце D у меня есть список пользователей. Одно имя пользователя может быть числом раз в столбце D. Я пытаюсь выяснить% от каждого имени пользователя из общего количества пользователейExcel VBA Сводная диаграмма
Мне нужно нарисовать диаграмму столбца пользователя с осью X и% по оси Y. Диаграмма должна начинаться после трех строк последней ячейки в столбце D. Количество строк в столбце D будет меняться каждый раз в зависимости от частоты выборки. Я пытаюсь это автоматизировать некоторые из результатов теста.
Код я попытался
lastTC = Range("D" & Rows.Count).End(xlUp).Row
lastTCP = lastTC + 3
lastTCP1 = lastTC + 10
lastTCC = lastTC + 18
lastTC = Range("D" & Rows.Count).End(xlUp).Row
Range("D1", "D" & lastTC).Select
ActiveWorkbook.PivotCaches.Create(SourceType:=xlDatabase, SourceData:= _
("TOPMEM!$D$1:$D" & lastTC), Version:=xlPivotTableVersion14).CreatePivotTable _
TableDestination:=("TOPMEM!R1C10"), TableName:="PivotTable5", _
DefaultVersion:=xlPivotTableVersion14
Sheets("TOPMEM").Select
Cells(724, 1).Select
ActiveWorkbook.ShowPivotTableFieldList = True
With ActiveSheet.PivotTables("PivotTable5").PivotFields("USER")
.Orientation = xlRowField
.Position = 1
End With
ActiveSheet.PivotTables("PivotTable5").AddDataField ActiveSheet.PivotTables(_
"PivotTable5").PivotFields("USER"), "Count of USER", xlCount
Range("K1").Select
With ActiveSheet.PivotTables("PivotTable9").PivotFields("Count of USER")
.Calculation = xlPercentOfTotal
.NumberFormat = "0.00%"
End With
ActiveWorkbook.ShowPivotTableFieldList = False
Какая у вас проблема. Разве это не компилируется? Не работать? Если это так, то какие проблемы вы пытаетесь решить? –
Я получаю «Ошибка времени выполнения - 1004 Невозможно получить свойство сводной таблицы класса Worksheet». – user2761582