Использование записи макросов, я произвел следующий код, чтобы добавить сводную таблицу:Ошибка при создании сводной таблицы с помощью VBA
ActiveWorkbook.PivotCaches.Create(SourceType:=xlDatabase, SourceData:= _
"Step 1!R1C1:R30750C34", Version:=6).CreatePivotTable TableDestination:= _
"Pivot Table 2!R1C1", TableName:="PivotTable3", DefaultVersion:=6
Sheets("Pivot Table 2").Select
Cells(1, 1).Select
With ActiveSheet.PivotTables("PivotTable3").PivotFields("STOCK NUMBER")
.Orientation = xlRowField
.Position = 1
End With
ActiveSheet.PivotTables("PivotTable3").AddDataField ActiveSheet.PivotTables(_
"PivotTable3").PivotFields("DUO QTY"), "Sum of DUO QTY", xlSum
ActiveSheet.PivotTables("PivotTable3").AddDataField ActiveSheet.PivotTables(_
"PivotTable3").PivotFields("Excess"), "Sum of Excess", xlSum
ActiveSheet.PivotTables("PivotTable3").AddDataField ActiveSheet.PivotTables(_
"PivotTable3").PivotFields("Cann"), "Sum of Cann", xlSum
Затем я сделал одно изменение, так что номер строки для sourceData будет динамическим, а не фиксированной :
Sheets("Step 1").Activate
Step1Rows = Sheets("Step 1").UsedRange.Rows.Count
ActiveWorkbook.PivotCaches.Create(SourceType:=xlDatabase, SourceData:= _
"Step 1!R1C1:R" & Step1Rows & "C34", Version:=6).CreatePivotTable TableDestination:= _
"Pivot Table 2!R1C1", TableName:="PivotTable3", DefaultVersion:=6
При запуске этого кода я получаю ошибку времени выполнения 5, неправильный вызов или аргумент процедуры. При дальнейшем исследовании я получаю ту же ошибку, если попытаюсь запустить записанный код. Сначала я думал, что это связано с жестко закодированным именем таблицы, но я попытался изменить это, и я все равно получаю ту же ошибку во время выполнения. Не знаю, как действовать прямо сейчас, поэтому, если кто-то может заметить что-то не так или предложить предложения, он будет очень признателен.
какая версия Excel вы используете? не знакомы с 'DefaultVersion: = 6', см. документацию MSDN: https://msdn.microsoft.com/en-us/library/microsoft.office.interop.excel.xlpivottableversionlist.aspx –
Использование Excel 2016, – jerH
Пробное изменение к 'DefaultVersion: = xlPivotTableVersion15' и получил ту же ошибку. На жаворонке попытался «DefaultVersion: = xlPivotTableVersion16» и получил переменную неопределенную ошибку .... – jerH