да помогло, когда создал лист Sheet1, можно как то дописать впереди чтобы он его автоматом создавал?
Теперь в следующих строках затык
Код |
---|
1 | Set objField = objTable.PivotFields( "Цена" )
|
|
Ошибка 1004 Невозможно получить свойство PivotFields класса PivotTable
Собственно весь код:
Код |
---|
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 | Sub Создание_сводной()
Dim objTable As PivotTable, objField As PivotField
ActiveWorkbook.Sheets( "RAZNARYAD" ). Select
Range( "A1" ). Select
Set objTable = Worksheets( "Sheet1" ).PivotTableWizard
Set objField = objTable.PivotFields( "Учреждение" )
objField.Orientation = xlRowField
Set objField = objTable.PivotFields( "Наименование" )
objField.Orientation = xlRowField
Set objField = objTable.PivotFields( "Кол-во 1" )
objField.Orientation = xlRowField
Set objField = objTable.PivotFields( "Кол-во 2" )
objField.Orientation = xlRowField
Set objField = objTable.PivotFields( "Цена" )
objField.Orientation = xlDataField
objField. Function = xlSum
objField.NumberFormat = "$ #,##0"
Set objField = objTable.PivotFields( "Контракт" )
objField.Orientation = xlPageField
ActiveSheet.PrintPreview
Application.DisplayAlerts = False
If MsgBox( "Delete the PivotTable?" , vbYesNo) = vbYes Then
ActiveSheet.Delete
End If
Application.DisplayAlerts = True
End Sub
|
|