VBA - Как сгруппировать столбцы в сводной таблице, свернуть группу и переименовать метку? - PullRequest
0 голосов
/ 05 декабря 2018

Как бы я сгруппировал столбцы в сводной таблице, свернул группу и переименовал метку, учитывая, что моя сводная таблица "Сводная таблица1" выглядит следующим образом:

Pivot Table

Как вы можете, мои столбцы обозначают даты.Обычно мне приходится вручную сдвигать + щелкать даты и щелкать правой кнопкой мыши, чтобы сгруппировать их в «Групповой №», а затем переименовать метку в нечто более значимое, например «Q1 2019» и т. Д.

enter image description here

Как видите, две вещи, которые я делал выше, объединяют месяцы январь, февраль, март 2018 года в одну группу и переименовывают метку «Q1 2019».

Сейчасэтот процесс становится очень трудоемким и повторяющимся, когда файл запускается до 2030+, поэтому мне было интересно, есть ли способ достичь этого с помощью VBA?

Опять цели макроса были бы:

  1. Группировка меток столбцов с использованием некоторых критериев - в моем случае группировка дат в кварталы.
  2. Переименование вновь сгруппированных меток столбцов
  3. Свертывание вновь созданных групп.

Я могу переименовать что-то вроде следующего.Sheets("Sheet1").PivotTables(1).PivotFields("date").PivotItems("rdates").Caption = "Q1 2019"

Также я могу манипулировать атрибутами сводных полей ActiveSheet.PivotTables("PivotTable1").PivotFields("date").Orientation = xlHidden With ActiveSheet.PivotTables("PivotTable1").PivotFields("date") .Orientation = xlRowField .Position = 2 End With

, но не уверен, как вы сможете группировать по критериям?IE все январь-март = Q1 + год

...