powered by simpleCommunicator - 2.0.61     © 2026 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / Программирование [игнор отключен] [закрыт для гостей] / Сводные таблицы через VBA
1 сообщений из 1, страница 1 из 1
Сводные таблицы через VBA
    #39380071
SergeyBelmas
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
при создании сводной таблицы посредством VBA у меня закрывается доступ к работе со срезами. Использую Excel2016. Пример во вложении.
код макроса:
Option Explicit

Sub addTab()
Dim rRange As Range
Dim WshData As Worksheet
Dim WshPiv As Worksheet
Dim Pivot As PivotTable
Set WshData = ActiveWorkbook.Sheets("Data")
Set WshPiv = ActiveWorkbook.Sheets("Свод")
WshData.Activate
'Указать диапазон для сводной таблицы
Set rRange = Application.InputBox(Prompt:="Введите диапазон значений", _
Title:="Ввод данных", _
Default:=Range(Cells(ActiveCell.End(xlUp).Row, _
ActiveCell.End(xlToLeft).Column), _
Cells(ActiveCell.End(xlDown).Row, _
ActiveCell.End(xlToRight).Column)).Address, Type:=8)
'создать своздную таблицу
Set Pivot = PT(WshData, WshPiv, rRange, "A1")
'задать поля и строки сводной таблицы
Pivot.AddFields RowFields:=Array("Категория оборудования", _
"Название оборудования"), ColumnFields:="Регион", _
PageFields:="Рынок сбыта"
With Pivot.PivotFields("Доход")
.Orientation = xlDataField
.Function = xlSum
.Position = 1
.NumberFormat = "# #### ##0"
.Name = "Доход "
End With

End Sub
Public Function PT(WSD As Worksheet, WSPT As Worksheet, _
DataTable As Range, CellAddress As String) As PivotTable
Dim PTCache As PivotCache

'удаление сводных таблиц
For Each PT In WSPT.PivotTables
PT.TableRange2.Clear
Next
'Создание кэша и сводной таблицы
WSD.Activate
Set PTCache = ActiveWorkbook.PivotCaches.Add _
(SourceType:=xlDatabase, SourceData:=DataTable.Address)
Set PT = PTCache.CreatePivotTable(TableDestination:=WSPT.Range(CellAddress), _
TableName:="Сводная таблица")
'PTCache = Nothing
End Function

Прошу помочь
...
Рейтинг: 0 / 0
1 сообщений из 1, страница 1 из 1
Форумы / Программирование [игнор отключен] [закрыт для гостей] / Сводные таблицы через VBA
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]