Если вы ещё не знакомы со сводными таблицами, то начните с этой статьи.
Проблема
Бывает так, что анализируемые данные попадают к нам в виде отдельных таблиц, которые, тем не менее, нужно связать. Это легко может сделать MS Access, а в Excel для этого приходилось всегда использовать формулы типа ВПР (VLOOKUP). Однако, начиная с Excel 2013, у нас появилась возможность при построении сводной таблицы в качестве источника использовать несколько таблиц, связанных между собой по ключевым полям.
Пример
В нашем примере мы располагаем 4-мя таблицами: Заказы, Строки заказов, Товары, Клиенты.
Таблица заказов:
Таблица Строк заказов:
Таблица Товаров
Таблица Клиентов
Исходные таблицы оформлены в виде умных таблиц: Orders, OrderLines, Goods и Clients.
Вполне очевидно, что таблицы Orders и OrderLines могут быть связаны по полю ID_Заказа, таблицы Orders и Clients — по полю ID_клиента, таблицы OrderLines и Goods — по полю ID_товара.
Скачать пример
Создание модели данных
Создадим сводную таблицу на основе любой из имеющихся таблиц.
-
Выбираем в меню Вставка пункт Сводная таблица. В указанном диалоговом окне мы видим опцию Добавить эти данные в модель данных. Мы могли бы её выбрать, но я рекомендую другой, более удобный способ. Просто нажмите OK.
-
В появившейся панеле Поля сводной таблицы вы видите надпись ДРУГИЕ ТАБЛИЦЫ…
-
Нажмём её. Появится такой вопрос:
-
Отвечаем Да и видим, что в список полей добавились все наши таблицы:
-
Если вы начнёте выбирать поля, то через некоторое время в списке полей появится кнопка СОЗДАТЬ…
-
Нажмём её и создадим связи между нашими таблицами. Так создаётся связь между таблицей Orders и OrderLines. Обратите внимание, что Excel умеет создавать связь типа «один к одному» или «один ко многим«. Причём первой надо указывать таблицу, где «много», в противном случае Excel ругается и предлагает поменять их местами.
-
Аналогично создаём другие связи.
-
В диалоговое окно Управление связями можно попасть через ленту АНАЛИЗ команда Отношения
-
Чтобы видеть больше полей на панеле Поля сводной таблицы, можно через кнопку Сервис (в виде шестерёнки) выбрать это представление:
-
Результат будет таким:
-
В результате все наши таблицы теперь связаны и вы можете сформировать, к примеру, такой отчёт:
Просто и удобно!
Читайте также:
-
Введение в сводные таблицы
-
Автоматизация форматирования сводных таблиц
Использование нескольких таблиц для создания сводной таблицы
Excel для Microsoft 365 Excel для Microsoft 365 для Mac Excel 2021 Excel 2019 Excel 2016 Excel 2013 Еще…Меньше
Сводные таблицы удобно использовать для анализа данных и создания отчетов с ними. А если это реляционные данные (т. е. такие, которые хранятся в отдельных таблицах, но при этом их можно объединить благодаря общим значениям), вы можете создать сводную таблицу.
Чем отличается эта сводная таблица? Обратите внимание, что в списке полей справа отображается не одна таблица, а целый набор таблиц. Каждая из этих таблиц содержит поля, которые можно объединить в одну сводную таблицу для получения различных срезов данных. Не требуются ручное форматирование и подготовка данных. Сразу после импорта данных можно создать сводную таблицу на основе связанных таблиц.
Ниже приведены три основных шага для добавления нескольких таблиц в список полей сводной таблицы.
Шаг 1. Импорт связанных таблиц из базы данных
Импортируйте их из реляционной базы данных, например Microsoft SQL Server, Oracle или Access. Вы можете импортировать несколько таблиц одновременно:
-
Подключение к базе SQL Server данных
-
Подключение к базе данных Oracle
Может потребоваться установить дополнительное клиентское программное обеспечение. Обратитесь к администратору базы данных, чтобы уточнить, есть ли такая необходимость.
Примечание Не поддерживается в Excel для Mac.
Шаг 2. Добавление полей в сводную таблицу
Обратите внимание: список полей содержит несколько таблиц.
Это все таблицы, выбранные вами во время импорта. Каждую таблицу можно развернуть и свернуть для просмотра ее полей. Так как таблицы связаны, вы можете создать сводную таблицу, перетянув поля из любой таблицы в область ЗНАЧЕНИЯ, СТРОКИ или СТОЛБЦЫ. Вы можете:
-
Перетащите числовые поля в область ЗНАЧЕНИЯ. Например, если используется образец базы данных Adventure Works, вы можете перетащить поле «ОбъемПродаж» из таблицы «ФактПродажиЧерезИнтернет».
-
Перетащите поля даты или территории в область СТРОКИ или СТОЛБЦЫ, чтобы проанализировать объем продаж по дате или территории сбыта.
Шаг 3. Создание связей при необходимости
Иногда нужно создать связь между двумя таблицами, прежде чем использовать их в сводной таблице. Если появится сообщение о необходимости такой связи между таблицами, щелкните Создать, чтобы начать работу с ними.
Примечание Модели данных не поддерживаются в Excel для Mac.
Реляционные базы данных — это не единственный источник данных, который поддерживает работу с несколькими таблицами в списке полей сводной таблицы. Вы можете использовать таблицы в своей книге или импортировать каналы данных, а затем интегрировать их с другими таблицами данных в книге. Дополнительные сведения см. в статье Импорт нескольких таблиц из других источников данных.
Чтобы все эти несвязанные данные работали вместе, нужно каждую таблицу добавить в модель данных, а затем создать связи между ними с помощью соответствующих значений полей. Дополнительные сведения см. в статьях Добавление данных с листа в модель данных с помощью связанной таблицы,Создание связи между двумя таблицами иСоздание связей в представлении схемы.
После создания модели данных эти данные можно использовать в анализе. Ниже описано, как создать новую сводную таблицу или сводную диаграмму с помощью модели данных в книге.
-
Щелкните любую ячейку на листе.
-
Выберите Вставка и щелкните стрелку вниз элемента Сводная таблица.
-
Выберите Из внешнего источника данных.
-
Нажмите Выбрать подключение.
-
На вкладке Таблицы в разделе Модель данных этой книги выберите Таблицы в модели данных книги.
-
Нажмите кнопку Открыть, а затем — ОК, чтобы отобразить список полей, содержащий все таблицы в модели.
См. также
-
Создание модели данных в Excel
-
Получение данных с помощью надстройки Power Pivot
-
Упорядочение полей сводной таблицы с помощью списка полей
-
Создание сводной таблицы для анализа данных на листе
-
Создание сводной таблицы для анализа внешних данных
-
Создание сводной таблицы, подключенной к наборам данных Power BI
-
Изменение диапазона исходных данных для сводной таблицы
-
Обновление данных в сводной таблице
-
Удаление сводной таблицы
Нужна дополнительная помощь?
MulTEx »
19 Июнь 2017 4382 просмотров
Связать сводные
Данная функция является частью надстройки MulTEx
Вызов команды:
MulTEx -группа Специальные —Работа со сводными —Связать сводные
По умолчанию, если создавать сводную таблицу на основании данных, которые уже используются другой сводной таблицей, Excel связывает эти сводные в один кэш(специальная область памяти), что позволяет уменьшить размер файла, ускорить вычисления, создавать одинаковую группировку данных во всех таблицах сразу и фильтровать связанные одним кэшем сводные при помощи срезов(Slisers) и временной шкалы.
Как получаются сводные с разными кэшами? Иногда они специально создаются в отдельном кэше(например, для использования различных группировок — Сделать независимой), а иногда — случайно. Например, если сводная таблица создается на основании диапазона данных и одна строка(или столбец) была просто не захвачена или наоборот — захвачена лишняя. Тогда источник данных будет считаться разным и таблицы будут независимыми. Если проблема была замечена сразу — можно просто заново создать сводную. А если со сводной уже поработали и даже создали какие-то ссылки на неё? Переделывать все заново может занять не минуту и даже не две. И здесь как раз может помочь команда Связать сводные. Она быстро объединит в один кэш указанной сводной сразу все выбранные сводные:
Связать выбранные сводные:
в списке выбираются все сводные таблицы, которые необходимо связать в один кэш. Для удобства в списке помимо имени сводной таблицы указывается её источник и расположение на листах книги
с кэшем сводной: выбирается сводная таблица, с кэшем которой будут связаны выбранные сводные
Не связывать таблицы с различными источниками данных — т.к. данная команда связывает таблицы одним кэшем, она так же изменяет и источник данных для сводной таблицы. Если надо связать только те сводные, источник у которых совпадает с источником выбранной сводной, то необходимо установить флажок. В ином случае для всех выбранных сводных будет назначен новый источник, который используется в качестве данных для выбранной сводной(в поле с кэшем сводной). Это может пригодится в случаях, когда при создании сводной таблицы данные были выбраны ошибочно и создавать новую сводную и приводить её к нужному виду долго.
Расскажи друзьям, если статья оказалась полезной:
Видеоинструкции по использованию надстройки MulTEx
Одновременная фильтрация нескольких сводных таблиц
При создании сложных отчетов и, особенно, дашбордов в Microsoft Excel, весьма часто возникает необходимость одновременной фильтрации сразу нескольких сводных таблиц. Давайте разберёмся, как такое можно можно реализовать.
Способ 1. Общий срез для фильтрации сводных на одном источнике данных
Если сводные построены по одной исходной таблице данных, то проще всего использовать для их одновременной фильтрации срез — графический кнопочный фильтр, подключенный сразу ко всем сводным таблицам.
Чтобы его добавить, выделите любую ячейку в одной из сводных и на вкладке Анализ выберите команду Вставить срез (Analyze — Insert slicer). В открывшемся окошке пометьте галочками те столбцы, по которым вы хотите фильтровать данные и нажмите ОК:
Созданный срез будет, по умолчанию, фильтровать только ту сводную, для которой он был создан. Однако, воспользовавшись кнопкой Подключения к отчетам (Report connections) на вкладке Срез (Slicer) мы можем легко добавить к списку фильтруемых таблиц другие сводные:
Способ 2. Общий срез для фильтрации сводных на разных источниках
Если ваши сводные были построены не по одной, а по разным исходным таблицам данных, то приведённый выше способ не сработает, т.к. в окне Подключения к отчётам отображаются только те сводные, которые были построены по одному источнику.
Однако, можно легко обойти это ограничение, если использовать Модель Данных (мы подробно разбирали её в этой статье). Если загрузить наши таблицы в Модель и связать их там, то фильтрация станет распространяться на обе таблицы одновременно.
Допустим, что в качестве исходных данных у нас есть две таблицы по продажам и транспортным расходам:
Предположим, что перед нами стоит задача по каждой из них построить свою сводную и фильтровать их затем одновременно по городам общим срезом.
Делаем следующее:
1. Превращаем наши исходные таблицы в динамические «умные» с помощью сочетания клавиш Ctrl+T или команды Главная — Форматировать как таблицу (Home — Format as Table) и даём им имена таблПродажи и таблТранспорт на вкладке Конструктор (Design).
2. Загружаем по очереди обе таблицы в Модель с помощью кнопки Добавить в модель данных (Add to Data Model) на вкладке Power Pivot.
Напрямую связать эти таблицы в Модели не получится, т.к. пока Power Pivot поддерживает только тип связей «один-ко-многим», т.е. требует, чтобы в одной из таблиц не было дубликатов в столбце, по которому мы связываем. У нас же в обеих таблицах в поле Город присутствуют повторения. Так что потребуется создать ещё одну промежуточную таблицу-справочник со списком уникальных названий городов из обеих таблиц. Проще всего это сделать с помощью функционала надстройки Power Query, которая встроена в Excel начиная с 2016 версии (а для Excel 2010-2013 бесплатно скачивается с сайта Microsoft).
3. Выделив любую ячейку внутри «умной» таблицы, загружаем их по очереди в Power Query кнопкой Из таблицы / диапазона на вкладке Данные (Data — From table/range) и затем в окне Power Query выбираем на Главной команды Закрыть и загрузить — Закрыть и загрузить в (Home — Close&Load — Close&Load to…) и вариант импорта Только создать подключение (Only create connection):
4. Соединяем обе таблицы в одну командой Данные — Объединить запросы — Добавить (Data — Combine queries — Append). Совпадающие по названиям в шапке колонки встанут друг под друга (как столбец Город), а не совпадающие будут разнесены в разные столбцы (но для нас это не важно).
5. Удаляем все столбцы, кроме колонки Город, щёлкнув по её заголовку правой кнопкой мыши и выбрав команду Удалить другие столбцы (Remove other columns) и затем удаляем все дубликаты названий городов, щёлкнув ещё раз правой кнопкой мыши по заголовку столбца и выбрав команду Удалить дубликаты (Remove duplicates):
6. Созданный список-справочник выгружаем в Модель Данных через Главная — Закрыть и загрузить — Закрыть и загрузить в (Home — Close&Load — Close&Load to…) и выбираем вариант Только создать подключение (Only create connection) и — самое главное! — включаем флажок Добавить эти данные в модель данных (Add this data to Data Model):
7. Теперь можем, вернувшись в окно Power Pivot (вкладка Power Pivot — кнопка Управление), переключиться в Представление диаграммы (Diagram view) и связать наши таблицы продаж и траспортных расходов через созданный промежуточный справочник по городам (перетаскиванием полей между таблицами):
8. Теперь можно создать все требуемые сводные таблицы по созданной модели с помощью кнопки Сводная таблица (Pivot Table) на Главной (Home) вкладке в окне Power Pivot и, выделив любую ячейку в любой сводной, на вкладке Анализ добавить срез кнопкой Вставить срез (Analyze — Insert Slicer) и выбрать для среза в списке поле Город в добавленном справочнике:
Теперь, нажав на знакомую кнопку Подключения к отчетам на вкладке Срез (Slicer — Report connections) мы увидим все наши сводные, т.к. построены они теперь по связанным исходным таблицам. Останется включить недостающие флажки и нажать на ОК — и наш срез начнёт фильтровать все выбранные сводные таблицы одновременно.
Ссылки по теме
- Преимущества сводной по Модели Данных
- План-факт анализ в сводной таблице с Power Pivot и Power Query
- Независимая группировка сводных таблиц
Содержание
- Создание связанных таблиц
- Способ 1: прямое связывание таблиц формулой
- Способ 2: использование связки операторов ИНДЕКС — ПОИСКПОЗ
- Способ 3: выполнение математических операций со связанными данными
- Способ 4: специальная вставка
- Способ 5: связь между таблицами в нескольких книгах
- Разрыв связи между таблицами
- Способ 1: разрыв связи между книгами
- Способ 2: вставка значений
- Вопросы и ответы
При выполнении определенных задач в Excel иногда приходится иметь дело с несколькими таблицами, которые к тому же связаны между собой. То есть, данные из одной таблицы подтягиваются в другие и при их изменении пересчитываются значения во всех связанных табличных диапазонах.
Связанные таблицы очень удобно использовать для обработки большого объема информации. Располагать всю информацию в одной таблице, к тому же, если она не однородная, не очень удобно. С подобными объектами трудно работать и производить по ним поиск. Указанную проблему как раз призваны устранить связанные таблицы, информация между которыми распределена, но в то же время является взаимосвязанной. Связанные табличные диапазоны могут находиться не только в пределах одного листа или одной книги, но и располагаться в отдельных книгах (файлах). Последние два варианта на практике используют чаще всего, так как целью указанной технологии является как раз уйти от скопления данных, а нагромождение их на одной странице принципиально проблему не решает. Давайте узнаем, как создавать и как работать с таким видом управления данными.
Создание связанных таблиц
Прежде всего, давайте остановимся на вопросе, какими способами существует возможность создать связь между различными табличными диапазонами.
Способ 1: прямое связывание таблиц формулой
Самый простой способ связывания данных – это использование формул, в которых имеются ссылки на другие табличные диапазоны. Он называется прямым связыванием. Этот способ интуитивно понятен, так как при нем связывание выполняется практически точно так же, как создание ссылок на данные в одном табличном массиве.
Посмотрим, как на примере можно образовать связь путем прямого связывания. Имеем две таблицы на двух листах. На одной таблице производится расчет заработной платы с помощью формулы путем умножения ставки работников на единый для всех коэффициент.
На втором листе расположен табличный диапазон, в котором находится перечень сотрудников с их окладами. Список сотрудников в обоих случаях представлен в одном порядке.
Нужно сделать так, чтобы данные о ставках из второго листа подтягивались в соответствующие ячейки первого.
- На первом листе выделяем первую ячейку столбца «Ставка». Ставим в ней знак «=». Далее кликаем по ярлычку «Лист 2», который размещается в левой части интерфейса Excel над строкой состояния.
- Происходит перемещения во вторую область документа. Щелкаем по первой ячейке в столбце «Ставка». Затем кликаем по кнопке Enter на клавиатуре, чтобы произвести ввод данных в ячейку, в которой ранее установили знак «равно».
- Затем происходит автоматический переход на первый лист. Как видим, в соответствующую ячейку подтягивается величина ставки первого сотрудника из второй таблицы. Установив курсор на ячейку, содержащую ставку, видим, что для вывода данных на экран применяется обычная формула. Но перед координатами ячейки, откуда выводятся данные, стоит выражение «Лист2!», которое указывает наименование области документа, где они расположены. Общая формула в нашем случае выглядит так:
=Лист2!B2
- Теперь нужно перенести данные о ставках всех остальных работников предприятия. Конечно, это можно сделать тем же путем, которым мы выполнили поставленную задачу для первого работника, но учитывая, что оба списка сотрудников расположены в одинаковом порядке, задачу можно существенно упростить и ускорить её решение. Это можно сделать, просто скопировав формулу на диапазон ниже. Благодаря тому, что ссылки в Excel по умолчанию являются относительными, при их копировании происходит сдвиг значений, что нам и нужно. Саму процедуру копирования можно произвести с помощью маркера заполнения.
Итак, ставим курсор в нижнюю правую область элемента с формулой. После этого курсор должен преобразоваться в маркер заполнения в виде черного крестика. Выполняем зажим левой кнопки мыши и тянем курсор до самого низа столбца.
- Все данные из аналогичного столбца на Листе 2 были подтянуты в таблицу на Листе 1. При изменении данных на Листе 2 они автоматически будут изменяться и на первом.
Способ 2: использование связки операторов ИНДЕКС — ПОИСКПОЗ
Но что делать, если перечень сотрудников в табличных массивах расположен не в одинаковом порядке? В этом случае, как говорилось ранее, одним из вариантов является установка связи между каждой из тех ячеек, которые следует связать, вручную. Но это подойдет разве что для небольших таблиц. Для массивных диапазонов подобный вариант в лучшем случае отнимет очень много времени на реализацию, а в худшем – на практике вообще будет неосуществим. Но решить данную проблему можно при помощи связки операторов ИНДЕКС – ПОИСКПОЗ. Посмотрим, как это можно осуществить, связав данные в табличных диапазонах, о которых шел разговор в предыдущем способе.
- Выделяем первый элемент столбца «Ставка». Переходим в Мастер функций, кликнув по пиктограмме «Вставить функцию».
- В Мастере функций в группе «Ссылки и массивы» находим и выделяем наименование «ИНДЕКС».
- Данный оператор имеет две формы: форму для работы с массивами и ссылочную. В нашем случае требуется первый вариант, поэтому в следующем окошке выбора формы, которое откроется, выбираем именно его и жмем на кнопку «OK».
- Выполнен запуск окошка аргументов оператора ИНДЕКС. Задача указанной функции — вывод значения, находящегося в выбранном диапазоне в строке с указанным номером. Общая формула оператора ИНДЕКС такова:
=ИНДЕКС(массив;номер_строки;[номер_столбца])
«Массив» — аргумент, содержащий адрес диапазона, из которого мы будем извлекать информацию по номеру указанной строки.
«Номер строки» — аргумент, являющийся номером этой самой строчки. При этом важно знать, что номер строки следует указывать не относительно всего документа, а только относительно выделенного массива.
«Номер столбца» — аргумент, носящий необязательный характер. Для решения конкретно нашей задачи мы его использовать не будем, а поэтому описывать его суть отдельно не нужно.
Ставим курсор в поле «Массив». После этого переходим на Лист 2 и, зажав левую кнопку мыши, выделяем все содержимое столбца «Ставка».
- После того, как координаты отобразились в окошке оператора, ставим курсор в поле «Номер строки». Данный аргумент мы будем выводить с помощью оператора ПОИСКПОЗ. Поэтому кликаем по треугольнику, который расположен слева от строки функций. Открывается перечень недавно использованных операторов. Если вы среди них найдете наименование «ПОИСКПОЗ», то можете кликать по нему. В обратном случае кликайте по самому последнему пункту перечня – «Другие функции…».
- Запускается стандартное окно Мастера функций. Переходим в нем в ту же самую группу «Ссылки и массивы». На этот раз в перечне выбираем пункт «ПОИСКПОЗ». Выполняем щелчок по кнопке «OK».
- Производится активация окошка аргументов оператора ПОИСКПОЗ. Указанная функция предназначена для того, чтобы выводить номер значения в определенном массиве по его наименованию. Именно благодаря данной возможности мы вычислим номер строки определенного значения для функции ИНДЕКС. Синтаксис ПОИСКПОЗ представлен так:
=ПОИСКПОЗ(искомое_значение;просматриваемый_массив;[тип_сопоставления])
«Искомое значение» — аргумент, содержащий наименование или адрес ячейки стороннего диапазона, в которой оно находится. Именно позицию данного наименования в целевом диапазоне и следует вычислить. В нашем случае в роли первого аргумента будут выступать ссылки на ячейки на Листе 1, в которых расположены имена сотрудников.
«Просматриваемый массив» — аргумент, представляющий собой ссылку на массив, в котором выполняется поиск указанного значения для определения его позиции. У нас эту роль будет исполнять адрес столбца «Имя» на Листе 2.
«Тип сопоставления» — аргумент, являющийся необязательным, но, в отличие от предыдущего оператора, этот необязательный аргумент нам будет нужен. Он указывает на то, как будет сопоставлять оператор искомое значение с массивом. Этот аргумент может иметь одно из трех значений: -1; 0; 1. Для неупорядоченных массивов следует выбрать вариант «0». Именно данный вариант подойдет для нашего случая.
Итак, приступим к заполнению полей окна аргументов. Ставим курсор в поле «Искомое значение», кликаем по первой ячейке столбца «Имя» на Листе 1.
- После того, как координаты отобразились, устанавливаем курсор в поле «Просматриваемый массив» и переходим по ярлыку «Лист 2», который размещен внизу окна Excel над строкой состояния. Зажимаем левую кнопку мыши и выделяем курсором все ячейки столбца «Имя».
- После того, как их координаты отобразились в поле «Просматриваемый массив», переходим к полю «Тип сопоставления» и с клавиатуры устанавливаем там число «0». После этого опять возвращаемся к полю «Просматриваемый массив». Дело в том, что мы будем выполнять копирование формулы, как мы это делали в предыдущем способе. Будет происходить смещение адресов, но вот координаты просматриваемого массива нам нужно закрепить. Он не должен смещаться. Выделяем координаты курсором и жмем на функциональную клавишу F4. Как видим, перед координатами появился знак доллара, что означает то, что ссылка из относительной превратилась в абсолютную. Затем жмем на кнопку «OK».
- Результат выведен на экран в первую ячейку столбца «Ставка». Но перед тем, как производить копирование, нам нужно закрепить ещё одну область, а именно первый аргумент функции ИНДЕКС. Для этого выделяем элемент колонки, который содержит формулу, и перемещаемся в строку формул. Выделяем первый аргумент оператора ИНДЕКС (B2:B7) и щелкаем по кнопке F4. Как видим, знак доллара появился около выбранных координат. Щелкаем по клавише Enter. В целом формула приняла следующий вид:
=ИНДЕКС(Лист2!$B$2:$B$7;ПОИСКПОЗ(Лист1!A4;Лист2!$A$2:$A$7;0))
- Теперь можно произвести копирование с помощью маркера заполнения. Вызываем его тем же способом, о котором мы говорили ранее, и протягиваем до конца табличного диапазона.
- Как видим, несмотря на то, что порядок строк у двух связанных таблиц не совпадает, тем не менее, все значения подтягиваются соответственно фамилиям работников. Этого удалось достичь благодаря применению сочетания операторов ИНДЕКС—ПОИСКПОЗ.
Читайте также:
Функция ИНДЕКС в Экселе
Функция ПОИСКПОЗ в Экселе
Способ 3: выполнение математических операций со связанными данными
Прямое связывание данных хорошо ещё тем, что позволяет не только выводить в одну из таблиц значения, которые отображаются в других табличных диапазонах, но и производить с ними различные математические операции (сложение, деление, вычитание, умножение и т.д.).
Посмотрим, как это осуществляется на практике. Сделаем так, что на Листе 3 будут выводиться общие данные заработной платы по предприятию без разбивки по сотрудникам. Для этого ставки сотрудников будут подтягиваться из Листа 2, суммироваться (при помощи функции СУММ) и умножаться на коэффициент с помощью формулы.
- Выделяем ячейку, где будет выводиться итог расчета заработной платы на Листе 3. Производим клик по кнопке «Вставить функцию».
- Следует запуск окна Мастера функций. Переходим в группу «Математические» и выбираем там наименование «СУММ». Далее жмем по кнопке «OK».
- Производится перемещение в окно аргументов функции СУММ, которая предназначена для расчета суммы выбранных чисел. Она имеет нижеуказанный синтаксис:
=СУММ(число1;число2;…)
Поля в окне соответствуют аргументам указанной функции. Хотя их число может достигать 255 штук, но для нашей цели достаточно будет всего одного. Ставим курсор в поле «Число1». Кликаем по ярлыку «Лист 2» над строкой состояния.
- После того, как мы переместились в нужный раздел книги, выделяем столбец, который следует просуммировать. Делаем это курсором, зажав левую кнопку мыши. Как видим, координаты выделенной области тут же отображаются в поле окна аргументов. Затем щелкаем по кнопке «OK».
- После этого мы автоматически перемещаемся на Лист 1. Как видим, общая сумма размера ставок работников уже отображается в соответствующем элементе.
- Но это ещё не все. Как мы помним, зарплата вычисляется путем умножения величины ставки на коэффициент. Поэтому снова выделяем ячейку, в которой находится суммированная величина. После этого переходим к строке формул. Дописываем к имеющейся в ней формуле знак умножения (*), а затем щелкаем по элементу, в котором располагается показатель коэффициента. Для выполнения вычисления щелкаем по клавише Enter на клавиатуре. Как видим, программа рассчитала общую заработную плату по предприятию.
- Возвращаемся на Лист 2 и изменяем размер ставки любого работника.
- После этого опять перемещаемся на страницу с общей суммой. Как видим, из-за изменений в связанной таблице результат общей заработной платы был автоматически пересчитан.
Способ 4: специальная вставка
Связать табличные массивы в Excel можно также при помощи специальной вставки.
- Выделяем значения, которые нужно будет «затянуть» в другую таблицу. В нашем случае это диапазон столбца «Ставка» на Листе 2. Кликаем по выделенному фрагменту правой кнопкой мыши. В открывшемся списке выбираем пункт «Копировать». Альтернативной комбинацией является сочетание клавиш Ctrl+C. После этого перемещаемся на Лист 1.
- Переместившись в нужную нам область книги, выделяем ячейки, в которые нужно будет подтягивать значения. В нашем случае это столбец «Ставка». Щелкаем по выделенному фрагменту правой кнопкой мыши. В контекстном меню в блоке инструментов «Параметры вставки» щелкаем по пиктограмме «Вставить связь».
Существует также альтернативный вариант. Он, кстати, является единственным для более старых версий Excel. В контекстном меню наводим курсор на пункт «Специальная вставка». В открывшемся дополнительном меню выбираем позицию с одноименным названием.
- После этого открывается окно специальной вставки. Жмем на кнопку «Вставить связь» в нижнем левом углу ячейки.
- Какой бы вариант вы не выбрали, значения из одного табличного массива будут вставлены в другой. При изменении данных в исходнике они также автоматически будут изменяться и во вставленном диапазоне.
Урок: Специальная вставка в Экселе
Способ 5: связь между таблицами в нескольких книгах
Кроме того, можно организовать связь между табличными областями в разных книгах. При этом используется инструмент специальной вставки. Действия будут абсолютно аналогичными тем, которые мы рассматривали в предыдущем способе, за исключением того, что производить навигацию во время внесений формул придется не между областями одной книги, а между файлами. Естественно, что все связанные книги при этом должны быть открыты.
- Выделяем диапазон данных, который нужно перенести в другую книгу. Щелкаем по нему правой кнопкой мыши и выбираем в открывшемся меню позицию «Копировать».
- Затем перемещаемся к той книге, в которую эти данные нужно будет вставить. Выделяем нужный диапазон. Кликаем правой кнопкой мыши. В контекстном меню в группе «Параметры вставки» выбираем пункт «Вставить связь».
- После этого значения будут вставлены. При изменении данных в исходной книге табличный массив из рабочей книги будет их подтягивать автоматически. Причем совсем не обязательно, чтобы для этого были открыты обе книги. Достаточно открыть одну только рабочую книгу, и она автоматически подтянет данные из закрытого связанного документа, если в нем ранее были проведены изменения.
Но нужно отметить, что в этом случае вставка будет произведена в виде неизменяемого массива. При попытке изменить любую ячейку со вставленными данными будет всплывать сообщение, информирующее о невозможности сделать это.
Изменения в таком массиве, связанном с другой книгой, можно произвести только разорвав связь.
Разрыв связи между таблицами
Иногда требуется разорвать связь между табличными диапазонами. Причиной этого может быть, как вышеописанный случай, когда требуется изменить массив, вставленный из другой книги, так и просто нежелание пользователя, чтобы данные в одной таблице автоматически обновлялись из другой.
Способ 1: разрыв связи между книгами
Разорвать связь между книгами во всех ячейках можно, выполнив фактически одну операцию. При этом данные в ячейках останутся, но они уже будут представлять собой статические не обновляемые значения, которые никак не зависят от других документов.
- В книге, в которой подтягиваются значения из других файлов, переходим во вкладку «Данные». Щелкаем по значку «Изменить связи», который расположен на ленте в блоке инструментов «Подключения». Нужно отметить, что если текущая книга не содержит связей с другими файлами, то эта кнопка является неактивной.
- Запускается окно изменения связей. Выбираем из списка связанных книг (если их несколько) тот файл, с которым хотим разорвать связь. Щелкаем по кнопке «Разорвать связь».
- Открывается информационное окошко, в котором находится предупреждение о последствиях дальнейших действий. Если вы уверены в том, что собираетесь делать, то жмите на кнопку «Разорвать связи».
- После этого все ссылки на указанный файл в текущем документе будут заменены на статические значения.
Способ 2: вставка значений
Но вышеперечисленный способ подходит только в том случае, если нужно полностью разорвать все связи между двумя книгами. Что же делать, если требуется разъединить связанные таблицы, находящиеся в пределах одного файла? Сделать это можно, скопировав данные, а затем вставив на то же место, как значения. Кстати, этим же способом можно проводить разрыв связи между отдельными диапазонами данных различных книг без разрыва общей связи между файлами. Посмотрим, как этот метод работает на практике.
- Выделяем диапазон, в котором желаем удалить связь с другой таблицей. Щелкаем по нему правой кнопкой мыши. В раскрывшемся меню выбираем пункт «Копировать». Вместо указанных действий можно набрать альтернативную комбинацию горячих клавиш Ctrl+C.
- Далее, не снимая выделения с того же фрагмента, опять кликаем по нему правой кнопкой мыши. На этот раз в списке действий щелкаем по иконке «Значения», которая размещена в группе инструментов «Параметры вставки».
- После этого все ссылки в выделенном диапазоне будут заменены на статические значения.
Как видим, в Excel имеются способы и инструменты, чтобы связать несколько таблиц между собой. При этом, табличные данные могут находиться на других листах и даже в разных книгах. При необходимости эту связь можно легко разорвать.
Helen Bradley рассказывает, как группировать данные в сводной таблице Excel для их дальнейшего обобщения и анализа.
- Группируем по значению
- Группируем по дате
- Группируем данные вручную
- Исправляем ошибки
- Детализация групп
- Группировка и несколько диапазонов консолидации
Группируем по значению
Представьте себе такую ситуацию: Вы анализируете подборку счетов, собранных в сводной таблице. Вы можете обобщать счета, объединяя их в группы по 5 — 10 или даже 100 счетов. Давайте рассмотрим пример, где идентификатор строки OrderID — это числовое поле. В данный момент каждому счёту соответствует отдельная строка, и результат получается довольно громоздким. Мы можем сгруппировать эти данные, чтобы упростить таблицу.
В этой сводной таблице каждый идентификатор OrderID представлен в отдельной строке. Такие данные можно считать обобщёнными, но нам этого недостаточно.
Для этого кликните правой кнопкой мыши по одному из OrderID данной сводной таблицы и в появившемся меню выберите Group (Группировать). Так как OrderID это числовое поле, то диалоговое окно уже будет подготовлено для численной группировки с полями Starting At (Начиная с), Ending At (По) и By (С шагом). В данной ситуации Excel предлагает Вам группировать элементы по 10 штук.
По умолчанию Excel предлагает в качестве значения Starting At (Начиная с) первый элемент OrderID: 10248. Тем не менее, Вы можете настроить точнее или создать другую группировку, установив собственное значение параметра Starting At (Начиная с). Чтобы начать с элемента 10240, введите это значение в поле Starting At (Начиная с) — Вы можете установить любое стартовое значение, даже такое, которого нет в данных.
Мы настраиваем параметры группировки данных — они будут сгруппированы по полю OrderID по десять последовательно пронумерованных заказов.
Итак, мы настроили значение Starting At (Начиная с), оставили значение Ending At (По) таким, как предложил Excel, и оставили значение By (С шагом) равным 10, поскольку оно нам подходит. Вы можете делать группы меньше или больше, изменяя это значение — например: 5, 20, 50 или 100. Теперь жмём ОК. Данные будут сгруппированы по значению OrderID в более удобные для обработки группы.
Вот так выглядят данные, сгруппированные по OrderID. Как видите, они значительно более обобщены, чем ранее.
Группируем по дате
Если данные, с которыми Вы работаете, являются датами, то Вы сможете использовать похожий приём. Чтобы сгруппировать информацию по датам, кликните правой кнопкой мыши по дате в столбце или строке Вашей сводной таблицы и выберите Group (Группировать). Вы можете выбрать шаг группировки — Seconds (Секунды), Minutes (Минуты), Hours (Часы), Days (Дни), Months (Месяцы), Quarters (Кварталы) или Years (Годы), и установить начальный и конечный момент времени. Для группировки по годам, кварталам и месяцам интервал зафиксирован равным 1, а для группировки по дням Вы можете установить собственный интервал, например, равный 7 дням, чтобы сгруппировать данные по неделям. Для этого выберите Days (Дни) как шаг группировки, установите количество дней равным 7, укажите для параметра Starting At (Начиная с) дату, которая выпадает на начало недели, и нажмите ОК. Информация будет сгруппирована по неделям.
Большой объём данных будет сгруппирован по неделям (по 7 дней), и первым днем выступит воскресенье — день недели, соответствующий дате, указанной в параметре Starting At (Начиная с).
Группируем данные вручную
Не всегда набор записей можно разделить по группам с такой же лёгкостью, как последовательность чисел или дат. Иногда группа становится группой просто потому, что Вы так решили. В этом случае можно создать свою собственную группировку. Откройте лист со сводной таблицей, кликните по первому элементу данных, который нужно включить в группу и далее, с нажатой клавишей Ctrl, последовательно щелкните по всем элементам, которые также нужно включить в эту группу. Затем на вкладке PivotTable / Options (Работа со сводными таблицами / Анализ) нажмите Group Selection (Группировка по выделенному) и элементы будут добавлены в новую группу. Таким же образом Вы можете выделить другие элементы и создать еще одну группу.
Выделив несколько полей, Вы можете объединить их в группы так, как будет удобно.
При помощи этого инструмента Вы можете группировать данные в небольшие подборки, с которыми удобно работать. Так как по умолчанию группы названы именами Group 1 (Группа 1) и Group 2 (Группа 2), Вам придётся самостоятельно переименовать их. Для этого кликните ячейку, содержащую имя группы, и в строке формул введите более подходящее имя для группы.
После того, как группы созданы, Вы вправе переименовывать их, как угодно.
Вы можете развернуть или свернуть группу, нажав символы плюс или минус (+/-) слева от имени группы.
Исправляем ошибки
Иногда, пытаясь сгруппировать выделенные данные, Вы получите сообщение об ошибке, уведомляющее, что выбранные данные не могут быть объединены в группу. Есть целый ряд причин, почему это может произойти. Одна из причин: если Вы пытаетесь создать собственную группировку, то должны выделить два или более элемента для создания группы — нельзя создать группу из одной записи.
Если у Вас есть пустые ячейки в тех полях, где должны быть даты или числа, то это тоже станет причиной сообщения об ошибке. Ошибка появится и в том случае, если вместо даты или числа в ячейке содержится текстовое значение. В каждом случае, проверьте исходные данные и исправьте ошибку, а затем обновите сводную таблицу и попытайтесь снова.
Детализация групп
Одним из преимуществ, которые даёт группировка данных, является то, что Вы можете извлечь подмножество сгруппированных данных на новый лист. Чтобы сделать это, выберите группу, и дважды щелкните по ячейке с интересующим Вас итоговым значением. Данные, из которых было собрано это итоговое значение, будут извлечены на новый лист текущей рабочей книги Excel.
Двойной щелчок мышью по любому значению в сводной таблице создаёт новый лист, содержащий все данные, относящиеся к этому значению.
Группировка и несколько диапазонов консолидации
Вы можете создавать группы в сводной таблице, которая собрана из нескольких консолидированных диапазонов, например, из данных на разных листах рабочей книги. Для этого в Excel 2007 и 2010 на Панель быстрого доступа необходимо добавить команду PivotTable and PivotChart Wizard (Мастер сводных таблиц и диаграмм).
Чтобы сделать это, кликните выпадающее меню Панели быстрого доступа, выберите пункт More Commands (Другие команды), в открывшемся диалоговом окне установите группу All Commands (Все команды) и в списке команд найдите PivotTable and PivotChart Wizard (Мастер сводных таблиц и диаграмм). Нажмите кнопку Add (Добавить), чтобы добавить кнопку на Панель быстрого доступа.
Теперь Вы можете создать сводную таблицу из нескольких диапазонов Excel с единообразной компоновкой данных. Вам понадобятся данные с одинаковым количеством столбцов, одинаковыми заголовками столбцов, при этом каждая таблица может иметь разное количество строк.
Эта команда исключена из меню Excel 2010, но Вы можете добавить её на Панель быстрого доступа самостоятельно.
Создайте новый лист в Вашей рабочей книге Excel, кликните только что добавленную кнопку PivotTable and PivotChart Wizard (Мастер сводных таблиц и диаграмм), выберите пункты Multiple Consolidation Ranges (В нескольких диапазонах консолидации) и PivotTable (Сводная таблица), а затем нажмите Next (Далее). Выберите I will create the page fields (Создать поля страницы) и снова нажмите Next (Далее). Теперь Вам нужно указать каждый из диапазонов. Зайдите на первый лист, выберите все данные, включая заголовки таблицы, и нажмите Add (Добавить). Повторите шаги, чтобы добавить информацию со следующего листа и так далее, пока не добавите данные со всех листов, которые планировали использовать в сводной таблице.
Мастер сводных таблиц и диаграмм позволяет объединять сразу несколько диапазонов в одной сводной таблице.
В Мастере сводных таблиц и диаграмм первым делом нужно выбрать, какие диапазоны данных будут использованы.
Далее укажите количество полей, которые нужно добавить в сводную таблицу — вероятнее всего, Вам понадобится одно или два. Теперь выберите один из диапазонов в поле немного выше и введите для него имя группы. Затем выберите следующий диапазон и проделайте для него те же самые шаги. И так далее для всех диапазонов. Если имя группы уже существует, Вы можете не вводить его, а выбрать из выпадающего списка.
Так, например, диапазон, содержащий даты, может быть частью группы, которая разделяет месяцы по кварталам, а также частью группы, которая разделяет месяцы по сезонам: Winter (Зима), Spring (Весна), Summer (Лето) и Fall (Осень). Группировки могут быть по любому признаку, который Вы посчитаете подходящим для своих данных. Нажмите Next (Далее), кликните по ячейке, в которой должен будет находиться верхний левый угол сводной таблицы и нажмите Finish (Готово).
В Мастере сводных таблиц и диаграмм Вы можете связать диапазоны со страницами, как показано на рисунке выше — Quarters (Кварталы) и Seasons (Сезоны).
Сводная таблица будет сформирована автоматически, группы будут созданы как поля Report Filter (Фильтры) в списке полей сводной таблицы, но Вы, если пожелаете, можете перетащить эти поля в область Row Labels (Строки) или Column Labels (Колонны).
На рисунке выше показано: мы переместили страницу Page 2 (Сезоны) из области Report Filter (Фильтры) в область Row Labels (Строки).
Группируете ли Вы данные в уже готовой сводной таблице или Вы делаете это вместе с созданием сводной таблицы из нескольких диапазонов — результат будет одинаковый, и это станет ещё одним полезным инструментом в Вашем арсенале для обобщения данных в сводных таблицах Excel.
Урок подготовлен для Вас командой сайта office-guru.ru Источник: https://www.ablebits.com/office-addins-blog/2011/10/06/excel-group-pivottable-data/ Перевел: Андрей Антонов Правила перепечатки Еще больше уроков по Microsoft Excel
Сводные таблицы — один из самых мощных инструментов в Excel. Как привило, сводные таблицы строятся на основании одной исходной «плоской» таблицы. Однако, бывают задачи «со звездочкой» — когда нужно построить сводную таблицу из нескольких исходных таблиц. В этой статье узнаем, как создать сводную таблицу из нескольких таблиц.
У нас есть две исходные таблицы с фактическими и плановыми данными по сделкам агентства недвижимости. Таблицы имеют разные структуры:
- таблица с фактическими данными разбита по месяцам и отделам
- таблица с планами разбита только по отделам (план на год)
Задача: сравнить факт и бюджет по отделам и вывести процент выполнения плана.
По умолчанию сводную таблицу можно создать только из одной исходной таблицы.
Чтобы включить в сводную таблицу данные из нескольких таблиц, можно, например, собирать данные из всех таблиц при помощи функций СУММЕСЛИМН, ВПР и т.д. Но это не всегда удобно и может значительно “подвесить” excel.
Есть более профессиональный способ собрать данные в сводную таблицу из нескольких исходных — при помощи модели данных.
Если кого-то вдруг напугали незнакомые слова “модель данных”, сразу скажу — Power Pivot мы использовать не будем.
Итак, две исходные таблицы представлены на картинке. Обратите внимание, что обе таблицы представлены в виде “умных” таблиц. Таблицам присвоены имена “Факт” и “Бюджет”.
Нужно сделать сводную таблицу со следующими столбцами: Отдел, Фактическая сумма сделок, Плановая сумма сделок, Процент выполнения плана.
Шаг 1. Создаем сводную таблицу из первой таблицы (Факт)
Встаем на любую ячейку первой таблицы (всю таблицу можно не выделять, т.к.это “умная” таблица) и переходим в меню Вставка — Сводная таблица.
Далее выбираем переключатель Новый лист и — внимание! — обязательно устанавливаем галочку Добавить эти данные в модель данных.
На новом листе создается пустая заготовка под сводную таблицу. Но мы пока ее не трогаем.
Шаг 2. Добавляем вторую таблицу в созданную сводную
Чтобы добавить вторую таблицу (Бюджет) в уже созданную сводную таблицу, ничего делать не нужно. Достаточно перейти на листе созданной сводной таблицы в окне Поля сводной таблицы на вкладку Все (по умолчанию открыта вкладка Активная).
Как видите, обе таблицы уже находятся в модели данных.
Шаг 3. Создадим общую сводную таблицу из двух таблиц
Создаем сводную таблицы как обычно.
- в блок Строки перетягиваем поле Отдел из таблицы Бюджет. Здесь важно, чтобы поле отдел выбрать из таблицы Бюджет, а не Факт, т.к. в данном случае именно в таблице Бюджет содержатся уникальные значения отделов.
- в блок Значения — поле Фактическая сумма сделок из таблицы Факт и поле План годовой из таблицы План.
Сводная таблица из двух таблиц готова.
Осталось добавить столбец, в котором посчитаем выполнение бюджетного плана.
Поскольку мы использовали модель данных для создания сводной таблицы, как обычно создать вычисляемое поле в данном случае не получится. Здесь нужно создать меру.
Шаг 4. Создадим меру для расчета выполнения планового бюджета
В окне Поля сводной таблицы щелкнем правой кнопкой мыши на таблице Бюджет и выберем Добавить меру.
В окне Мера зададим имя меры (Выполнение) и далее, установив курсор в поле Формула, введем значок верхнего апострофа ‘
Появится выпадающий список столбцов, из которых выберем нужный нам (сумма по полю Факт). Далее напишем значок деления и также через апостроф выберем поле План.
Добавим созданную меру Выполнение в поле Значения и изменим для него формат на Процентный.
В этой статье мы узнали, как создать сводную таблицу из нескольких таблиц Excel и посчитали выполнение планового бюджета. При этом мы не обошлись без использования Power Pivot.
Статья на моем канале Яндекс.Дзен
Сообщество ВКонтакте
Вам может быть интересно: