Создание макроса, который может открывать несколько файлов и добавлять сводную таблицу к каждому.Все файлы отформатированы одинаково с «подробностями» рабочего листа, содержащими данные, необходимые для сводной таблицы.Однако каждый файл имеет разное количество строк, поэтому я пытаюсь использовать динамический диапазон для захвата всех данных в каждом файле.
Приведенная выше кодировка открывает файл и форматирует его по мере необходимости для работы с сводной таблицей.Таблица.
'Set Dynamic Range
Dim startCell As String
Dim lastRow As Long
Dim lastCol As Long
Dim WS As String
WS = "Details"
Worksheets(WS).Activate
'Find Last row and column
lastRow = Cells(Rows.Count, Cells(1, 7).Column).End(xlUp).Row
lastCol = Cells(1, Columns.Count).End(xlToLeft).Column
Range(Cells(1, 7), Cells(lastRow, lastCol)).Select
Range(Range("G1"), Range("G1").End(xlDown)).Select
Range(Selection, Selection.End(xlToRight)).Select
Selection.Name = "DynamicRange"
Sheets.Add After:=ActiveSheet
' Create Pivot Table
ActiveWorkbook.PivotCaches.Create(SourceType:=xlDatabase, SourceData:= _
"DynamicRange", Version:=6).CreatePivotTable TableDestination:= _
"Sheet1!R1C1", TableName:="PivotTable1", DefaultVersion:=6
Sheets("Sheet1").Select
Cells(1, 1).Select
With ActiveSheet.PivotTables("PivotTable1")
.ColumnGrand = True
.HasAutoFormat = True
Когда я попадаю в раздел «Создание сводной таблицы», первая строка дает мне код ошибки времени выполнения 1004.