Асимметричная сводная на наборах

Постановка задачи

Предположим, у нас есть таблица продаж с товарами, категориями, брендами, датами и суммами:

Исходные данные

По ней нам необходимо построить следующий отчёт сводной таблицы:

Асимметричная сводная как результат

Обратите особое внимание на её структуру:

  • в строках нужно посчитать итоги по категориям;
  • только по категории Спорт нужно показать три интересующих нас бренда - Peak, Pulse и Trail (исключив бренд Sprint);
  • по столбцам идут годы, но за 2024 год нужен только итог по выручке, 2025 год нужно разбить на кварталы, а в 2026 году показать помесячно как выручку, так и количество проданных товаров.

То есть нам нужна асимметричная структура отчёта, где разные ветки отчёта раскрыты на разную глубину.

Что такое наборы и зачем они нужны в Excel

Сводные таблицы в Excel хороши всем, кроме одного маленького, но иногда очень неприятного ограничения: они всегда строят симметричную структуру. Если мы, например, закинули в строки поля Категория и Бренд, то Excel честно покажет бренды сразу для всех категорий. А если в столбцы добавили поля ГодКвартал и Месяц, то такая 3-уровневая структура тоже будет применяться ко всем годам одинаково. Без вариантов.

Но в реальной жизни часто хочется чуть большего. Например:

  • по одной категории показать детализацию до товаров, а по остальным оставить только итоги;
  • вывести в разных столбцах не одни и те же поля значений, а разные;
  • сделать сводную, где в строках или столбцах идут не все элементы подряд, а только вручную выбранные комбинации;
  • собрать «красивую» управленческую форму отчёта, а не типовую симметричную "простыню".

Обычными настройками сводной таблицы такую конструкцию собрать, к сожалению, не получится. Зато можно использовать малоизвестный инструмент Excel под названием наборы - это вручную заданный список элементов или их комбинаций, которые Excel должен показать в строках или столбцах.

Технически этот механизм пришёл из OLAP-кубов (это один из видов баз данных) и работает только со сводными, построенными по модели данных Power Pivot. То есть обычная классическая сводная по диапазону или «умной» таблице здесь не подойдёт - исходные данные нужно сначала обязательно добавить в модель данных и только потом строить по ним сводную с использованием наборов.

Давайте рассмотрим весь процесс пошагово.

Шаг 1. Создаём симметричную сводную по модели данных

Сначала строим сводную таблицу по модели данных, используя команды Вставка - Сводная таблица (Insert - Pivot Table) и включив при этом флажок Добавить эти данные в модель данных (Add this data to Data Model):

Строим сводную по Модели Данных

Создаём сводную таблицу стандартным образом, перетаскивая нужные поля в строки, столбцы и значения. Раскрываем структуру примерно так, как она должна выглядеть в будущем отчёте:

  • в область строк помещаем поля Категория и Бренд
  • в область столбцов кладём Год, Квартал и Месяц
  • в область значений - поля Выручка и Количество

На этом этапе сводная ещё будет огромной симметричной "простынёй" - не пугайтесь. Наша задача сейчас - просто подготовить заготовку.

Шаг 2. Создаём набор по строкам

Ставим курсор внутрь сводной таблицы и выбираем на вкладке Анализ сводной таблицы команду Поля, элементы и наборы - Создать набор на основе элементов строк (Pivot Table Analyze - Fields, Items and Sets - Create Set Based on Row Items). Excel откроет окно, где каждая строка будущего отчёта будет представлена отдельным элементом набора. 

Здесь можно:

  • удалить ненужные строки с помощью кнопки Удалить строку (Delete Row);
  • поменять порядок элементов, двигая их выше-ниже с помощью кнопок со стрелками;
  • добавить новые строки или скопировать существующие:
  • переименовать набор понятным образом:
  • если наборов у вас много, то поместить его в определённую папку для удобства.
В итоге должно получиться примерно так:

Создание набора по строкам

По сути, мы вручную говорим Excel: «Покажи мне не всю стандартную иерархию, а вот именно эти строки и именно в таком порядке».

После нажатия ОК Excel заменит обычные поля в строках на созданный набор. В результате сводная станет асимметричной.

Шаг 3. Создаём набор по столбцам

Тот же трюк можно провернуть и со столбцами. Выбираем на вкладке Анализ сводной таблицы команду Поля, элементы и наборы - Создать набор на основе элементов столбцов (Pivot Table Analyze - Fields, Items and Sets - Create Set Based on Column Items) и задаём в диалоговом окне необходимую нам структуру вложенности, Причём не обязательно, чтобы все эти показатели имели одинаковую вложенность по годам, кварталам и месяцам.

 Набор по столбцам

После этого сводная примет требуемый вид и по колонкам. Останется лишь настроить мелочи, вроде форматирования или переименования полей для большей наглядности:

Результат

Несколько важных нюансов

  • Наборы работают только в сводных таблицах по модели данных или OLAP-источнику. Если команда создания набора у вас неактивна, то, скорее всего, сводная построена по обычному диапазону.
  • После создания набора структура строк или столбцов становится неавтоматической. Это удобно для красивых статических отчётов, но требует аккуратности: если в данных появятся новые категории, бренды или месяцы, то они не всегда автоматически окажутся в вашем наборе.
  • В такой сводной таблице нет привычных кнопок фильтрации с треугольничками в шапке, т.к. наборы, по сути, уже являются пользовательскими фильтрами.
  • Промежуточные итоги в такой сводной могут вести себя необычно - например, включать в себя удалённые из набора элементы. Чтобы это контролировать, щёлкните по сводной правой кнопкой мыши и выберите команду Параметры сводной таблицы - Итоги и фильтры (Pivot table properties - Totals and filters) и включите/выключите флажок Включить отобранные фильтром элементы в итоги по набору.
  • Наборы можно в любой момент отредактировать через диспетчер наборов командой Поля, элементы и наборы - Управление наборами (Manage sets).

Ссылки по теме



LKN
04.05.2026 21:36:41
В Excel 2016 приложенный пример - открывается, но отредактировать созданные наборы - невозможно: "Из-за проблем с моделью данных не удается открыть эту книгу в Microsoft Excel"...
05.05.2026 11:27:24
К сожалению, не могу протестировать эту проблему у себя - у меня 365 и всё отлично скачивается и открывается.
2021, та же проблема, но это не существенно)
05.05.2026 16:43:44
Сейчас попробую перезалить мой файл-пример, на всякий случай.
Подскажите, есть ли возможность сделать так, чтоб в сводной в столбце наименования отображалось не по алфавиту, а как в оригинальной таблице?
05.05.2026 16:43:10
Попробуйте правой кнопкой мыши по сводной - Параметры сводной таблицы - Вывод - Сортировка списка полей как в источнике данных.
Спасибо. Данный параметр отвечает за вывод в списке полей, а мне надо чтоб строки в самой таблицы были как в исходнике. Я раньше всегда сравнивал таблицы с помощью "Сводных таблиц". Теперь работаю с строительными сметами и приходится собирать вручную всегда таблицу, т.к. для меня важен список по порядку.
Пример
Наверх