Модель данных позволяет интегрировать данные из нескольких таблиц, эффективно создавая реляционный источник данных в книге Excel. В Excel модели данных используются прозрачно, предоставляя табличные данные, используемые в сводных таблицах и сводных диаграммах. Модель данных визуализируются как коллекция таблиц в списке полей, и в большинстве раз вы даже не узнаете, что она существует.
Прежде чем приступить к работе с моделью данных, необходимо получить некоторые данные. Для этого мы будем использовать интерфейс Get & Transform (Power Query), поэтому вам может потребоваться выполнить шаг назад и посмотреть видео, или следуйте нашему руководству по обучению по get & Transform и Power Pivot.
Где есть Power Pivot?
-
Excel 2016 & Excel для Microsoft 365 — Power Pivot включен в ленту.
-
Excel 2013 — Power Pivot входит в Office профессиональный плюс Excel 2013, но не включен по умолчанию. Дополнительные сведения о запуске надстройки Power Pivot для Excel 2013.
-
Excel 2010 — скачайте надстройку Power Pivot, а затем установите надстройку Power Pivot.
Где находится get & Transform (Power Query)?
-
Excel 2016 & Excel для Microsoft 365 . Get & Transform (Power Query) интегрировано с Excel на вкладке «Данные«.
-
Excel 2013 — Power Query — это надстройка, которая входит в Excel, но ее необходимо активировать. Перейдите к разделу «Параметры >» > надстроек, а затем в раскрывающемся списке «Управление» в нижней части панели выберите com-надстройки > Go. Проверьте microsoft Power Query Excel, а затем ОК, чтобы активировать его. На Power Query будет добавлена вкладка Power Query.
-
Excel 2010 — скачивание и установка Power Query надстройки.. После активации на ленту Power Query вкладки.
Начало работы
Сначала необходимо получить некоторые данные.
-
В Excel 2016 и Excel для Microsoft 365 используйте data >Get & Transform Data > Get Data > Get Data to import data from any number of external data sources, such as a text file, Excel workbook, website, Microsoft Access, SQL Server, or another relational database that contains multiple related tables.
В Excel 2013 и 2010 перейдите к Power Query >получения внешних данных и выберите источник данных.
-
Excel предложит выбрать таблицу. Если вы хотите получить несколько таблиц из одного источника данных, установите флажок «Включить выбор нескольких таблиц «. При выборе нескольких таблиц Excel автоматически создает модель данных.
Примечание: В этих примерах мы используем книгу Excel с вымышленными сведениями о классах и оценках учащихся. Вы можете скачать пример книги модели данных учащихся и следовать инструкциям. Вы также можете скачать версию с готовой моделью данных..
-
Выберите одну или несколько таблиц и нажмите кнопку «Загрузить «.
Если необходимо изменить исходные данные, можно выбрать параметр «Изменить «. Дополнительные сведения см. в статье «Общие сведения Редактор запросов (Power Query)».
Теперь у вас есть модель данных, которая содержит все импортированные таблицы, и они будут отображаться в списке полей сводной таблицы.
Примечания:
-
Модели создаются неявно, когда вы импортируете в Excel несколько таблиц одновременно.
-
Модели создаются явно, если вы импортируете данные с помощью надстройки Power Pivot. В надстройке модель представлена в макете с вкладками, аналогичном Excel, где каждая вкладка содержит табличные данные. Дополнительные сведения об импорте данных с помощью надстройки Power Pivotсм. в статье «Получение данных с помощью SQL Server данных».
-
Модель может содержать одну таблицу. Чтобы создать модель на основе только одной таблицы, выберите таблицу и нажмите кнопку Добавить в модель данных в Power Pivot. Это может понадобиться в том случае, если вы хотите использовать функции Power Pivot, например отфильтрованные наборы данных, вычисляемые столбцы, вычисляемые поля, ключевые показатели эффективности и иерархии.
-
Связи между таблицами могут создаваться автоматически при импорте связанных таблиц, у которых есть связи по первичному и внешнему ключу. Excel обычно может использовать импортированные данные о связях в качестве основы для связей между таблицами в модели данных.
-
Советы по сокращению размера модели данных см. в статье «Создание модели данных, оптимизированной для памяти, с помощью Excel и Power Pivot».
-
Дополнительные сведения см. в руководстве по импорту данных в Excel и созданию модели данных.
Создание связей между таблицами
Следующим шагом является создание связей между таблицами, чтобы вы могли извлекать данные из любой из них. Каждая таблица должна иметь первичный ключ или уникальный идентификатор поля, например идентификатор учащегося или номер класса. Самый простой способ — перетащить эти поля, чтобы подключить их в представлении схемы Power Pivot.
-
Перейдите в power Pivot > Manage.
-
На вкладке « Главная» выберите » Представление схемы».
-
Будут отображены все импортированные таблицы, и может потребоваться некоторое время, чтобы изменить их размер в зависимости от количества полей в каждой из них.
-
Затем перетащите поле первичного ключа из одной таблицы в следующую. В следующем примере показано представление схемы таблиц учащихся.
Мы создали следующие ссылки:
-
tbl_Students | Идентификатор учащегося > tbl_Grades | Идентификатор учащегося
Другими словами, перетащите поле «Идентификатор учащегося» из таблицы «Учащиеся» в поле «Идентификатор учащегося» в таблице «Оценки».
-
tbl_Semesters | Идентификаторы > tbl_Grades | Семестр
-
tbl_Classes | Номер класса > tbl_Grades | Номер класса
Примечания:
-
Имена полей не обязательно должны совпадать для создания связи, но они должны быть одинаковыми типами данных.
-
Соединители в представлении схемы имеют «1» с одной стороны, а «*» — с другой. Это означает, что между таблицами существует связь «один ко многим», которая определяет, как данные используются в сводных таблицах. См. дополнительные сведения о связях между таблицами в модели данных.
-
Соединители указывают только на наличие связи между таблицами. На самом деле они не показывают, какие поля связаны друг с другом. Чтобы просмотреть ссылки, перейдите в раздел Power Pivot > Manage > Design > Relationships > Управление связями. В Excel можно перейти к разделу «>данных».
-
Создание сводной таблицы или сводной диаграммы с помощью модели данных
Книга Excel может содержать только одну модель данных, но эта модель может содержать несколько таблиц, которые можно многократно использовать в книге. Вы можете добавить дополнительные таблицы в существующую модель данных в любое время.
-
В Power Pivotперейдите к разделу » Управление».
-
На вкладке « Главная» выберите сводную таблицу.
-
Выберите место размещения сводной таблицы: новый лист или текущее расположение.
-
Нажмите кнопку «ОК», и Excel добавит пустую сводную таблицу с областью списка полей справа.
Затем создайте сводную таблицу или сводную диаграмму. Если вы уже создали связи между таблицами, можно использовать любое из их полей в сводной таблице. Мы уже создали связи в образце книги модели данных учащихся.
Добавление имеющихся несвязанных данных в модель данных
Предположим, вы импортировали или скопировали много данных, которые вы хотите использовать в модели, но не добавили их в модель данных. Принудительно отправить новые данные в модель очень просто.
-
Начните с выбора любой ячейки в данных, которые необходимо добавить в модель. Это может быть любой диапазон данных, но лучше всего использовать данные, отформатированные в виде таблицы Excel .
-
Добавьте данные одним из следующих способов.
-
Щелкните Power Pivot > Добавить в модель данных.
-
Выберите Вставка > Сводная таблица и установите флажок Добавить эти данные в модель данных в диалоговом окне «Создание сводной таблицы».
Диапазон или таблица будут добавлены в модель как связанная таблица. Дополнительные сведения о работе со связанными таблицами в модели см. в статье Добавление данных с помощью связанных таблиц Excel в Power Pivot.
Добавление данных в таблицу Power Pivot данных
В Power Pivot невозможно добавить строку в таблицу, введя текст непосредственно в новой строке, как это можно сделать на листе Excel. Но можно добавить строки , скопируйте и вставьте или обновите исходные данные и обновите модель Power Pivot.
Дополнительные сведения
Вы всегда можете задать вопрос специалисту Excel Tech Community или попросить помощи в сообществе Answers community.
См. также
Ознакомьтесь & по преобразованию и обучению Power Pivot
Общие сведения о редакторе запросов (Power Query)
Создание модели данных, оптимизированной для памяти, с помощью Excel и Power Pivot
Руководство. Импорт данных в Excel и создание модели данных
Определение источников данных, используемых в модели данных книги
Связи между таблицами в модели данных
Аннотация. Это первый учебник из серии, который поможет ознакомиться с программой Excel и ее возможностями объединения и анализа данных, а также научиться легко использовать их. С помощью этой серии учебников вы научитесь создавать с нуля и совершенствовать рабочие книги Excel, строить модели данных и создавать удивительные интерактивные отчеты с использованием надстройки Power View. В этих учебниках приводится описание возможностей средств бизнес-аналитики Майкрософт в Excel, сводных таблиц, Power Pivot и Power View.
Примечание: В этой статье описаны модели данных Excel 2013. Тем не менее те же функции моделирования данных и Power Pivot, Excel 2013, также относятся к Excel 2016.
Вы узнаете, как импортировать и просматривать данные в Excel, строить и совершенствовать модели данных с использованием Power Pivot, а также создавать с помощью надстройки Power View интерактивные отчеты с возможностью публикации, защиты и предоставления общего доступа.
Учебники этой серии
-
Импорт данных в Excel 2013 и создание модели данных
-
Расширение связей модели данных с Excel, Power Pivot и DAX
-
Создание отчетов Power View на основе карт
-
Объединение интернет-данных и настройка параметров отчета Power View по умолчанию
-
Справка по Power Pivot
-
Создание впечатляющих отчетов Power View, часть 2
В этом учебнике вы начнете работу с пустой книги Excel.
Разделы учебника
-
Импорт данных из базы данных
-
Импорт данных из электронной таблицы
-
Импорт данных с помощью копирования и вставки
-
Создание связи между импортированными данными
-
Контрольная точка и тест
В конце учебника есть тест, с помощью которого можно проверить свои знания.
В этом учебном ряду используются данные об олимпийских медалях, странах, принимающих олимпийских играх, а также различных олимпийских соревнованиях. Мы рекомендуем вам перейти к каждому учебнику по порядку. Кроме того, в учебниках Excel 2013 с Power Pivot включена. Дополнительные сведения о Excel 2013 можно найти здесь. Чтобы получить инструкции по Power Pivot, щелкните здесь.
Импорт данных из базы данных
Начнем работу с учебником с пустой книги. В этом разделе вы узнаете, как подключиться к внешнему источнику данных и импортировать их в Excel для дальнейшего анализа.
Сначала загрузим данные из Интернета. Эти данные об олимпийских медалях являются базой данных Microsoft Access.
-
Чтобы скачать файлы, которые мы используем в этом ряду учебников, перейдите по следующим ссылкам: Скачайте каждый из четырех файлов в папку, которую легко найти, например «Загрузки» или «Мои документы», или в новую папку:
> OlympicMedals.accdb Access
>OlympicSports.xlsx Excel книги
> Population.xlsx Excel книги
>DiscImage_table.xlsx Excel книги -
Откройте пустую книгу в Excel 2013.
-
Выберите пункт ДАННЫЕ > Получение внешних данных > Из Access. Лента динамически изменяется по ширине книги, поэтому команды на ленте могут выглядеть не так, как в представленных ниже окнах. В первом окне показана лента при развернутой книге, а во втором ширина книги изменена таким образом, что она занимает лишь часть окна.
-
Выберите файл ОлимпийскиеМедали.accdb и нажмите кнопку Открыть. Появится окно «Выбор таблицы», в котором отобразятся таблицы, найденные в базе данных. Таблицы в базе данных похожи на листы или таблицы в Excel. Установите флажок Разрешить выбор нескольких таблиц. Затем нажмите кнопку ОК.
-
Появится окно «Импорт данных».
Примечание: Обратите внимание на то, что в нижней части окна вы можете добавить эти данные в модель данных ,показанную на следующем экране. Модель данных создается автоматически при одновременном импорте или работе с двумя или более таблицами. Модель данных интегрирует таблицы, позволяя провести большой анализ с помощью с помощью Power Pivot, таблиц и Power View. При импорте таблиц из базы данных существующие связи между ними используются для создания модели данных в Excel. Модель данных в Excel, но ее можно просматривать и изменять непосредственно с помощью Power Pivot надстройки. Модель данных подробно рассмотрена далее в этом учебнике.
Выберите параметр Отчет таблицы, который импортирует таблицы в Excel и подготавливает таблицу для анализа импортируемых таблиц, и нажмите кнопку ОК.
-
После завершения импорта данных будет создана сводная таблица на основе импортированных таблиц.
Теперь, когда данные импортированы в Excel и автоматически создана модель данных, можно приступить к их просмотру.
Просмотр данных в сводной таблице
Просматривать импортированные данные удобнее всего с помощью сводной таблицы. В сводной таблице можно перетаскивать поля (похожие на столбцы в Excel) из таблиц (например, таблиц, импортированных из базы данных Access) в разные области, настраивая представление данных. Сводная таблица содержит четыре области: ФИЛЬТРЫ, СТОЛБЦЫ, СТРОКИ и ЗНАЧЕНИЯ.
Возможно, придется поэкспериментировать, чтобы определить, в какие области следует перетащить поле. Можно перетаскивать из таблиц любое количество полей, пока представление данных в сводной таблице не примет нужный вид. Не бойтесь перетаскивать поля в любые области сводной таблицы — это не повлияет на базовые данные.
Рассмотрим в сводной таблице данные об олимпийских медалях, начиная с призеров Олимпийских игр, упорядоченных по дисциплинам, типам медалей и странам или регионам.
-
В разделе Поля сводной таблицы разверните таблицу Medals, щелкнув расположенную рядом с ней стрелку. В развернутой таблице Medals найдите поле NOC_CountryRegion и перетащите его в область СТОЛБЦЫ. Аббревиатура NOC обозначает Национальный олимпийский комитет — организационную единицу уровня страны или региона.
-
Затем перетащите виды спорта из таблицы Disciplines в область СТРОКИ.
-
Давайте отфильтруем дисциплины, чтобы отображались только пять видов спорта: стрельба из лука (Archery), прыжки в воду (Diving), фехтование (Fencing), фигурное катание (Figure Skating) и конькобежный спорт (Speed Skating). Это можно сделать в области Поля сводной таблицы или в фильтре Метки строк в самой сводной таблице.
-
Щелкните в любом месте этой Excel, чтобы выбрать ее. В списке полей таблицы, в котором расширена таблица Disciplines, наведите курсор на поле Discipline и справа от поля появится стрелка в списке. Щелкните стрелку вниз, щелкните (Выделить все),чтобы удалить все выбранные фигуры, а затем прокрутите список вниз и выберите Archery, Diving, Fencing, Figure Skating и Speed Skating. Нажмите кнопку ОК.
-
Либо щелкните в разделе сводной таблицы Метки строк стрелку раскрывающегося списка рядом с полем Метки строк, нажмите кнопку (Выбрать все), чтобы снять отметку со всех выбранных параметров, а затем прокрутите вниз и выберите пункты Archery, Diving, Fencing, Figure Skating и Speed Skating. Нажмите кнопку ОК.
-
-
В разделе Поля сводной таблицы перетащите поле Medal из таблицы Medals в область ЗНАЧЕНИЯ. Поскольку значения должны быть числовыми, Excel автоматически изменит поле Medal на Count of Medal.
-
В таблице Medals снова выберите поле Medal и перетащите его в область ФИЛЬТРЫ.
-
Давайте отфильтруем сводную таблицу таким образом, чтобы отображались только страны или регионы, завоевавшие более 90 медалей. Вот как это сделать.
-
В сводной таблице щелкните стрелку раскрывающегося списка рядом с полем Метки столбцов.
-
Выберите Фильтры по значению, а затем — Больше…
-
Введите 90 в последнем поле (справа). Нажмите кнопку ОК.
-
Сводная таблица будет иметь следующий вид:
Не затрачивая особых усилий, вы создали сводную таблицу, которая содержит поля из трех разных таблиц. Эта задача оказалась настолько простой благодаря заранее созданным связям между таблицами. Поскольку связи между таблицами существовали в исходной базе данных и вы импортировали все таблицы сразу, приложение Excel смогло воссоздать эти связи в модели данных.
Но что делать, если данные происходят из разных источников или импортируются не одновременно? Обычно можно создать связи с новыми данными на основе совпадающих столбцов. На следующем этапе вы импортируете дополнительные таблицы и узнаете об этапах создания новых связей.
Импорт данных из таблицы
Теперь давайте импортируем данные из другого источника, на этот раз из существующей книги, а затем укажите связи между существующими и новыми данными. Связи по возможности анализировать наборы данных в Excel и создавать интересные и иммерсивные визуализации на личных данных, которые вы импортируете.
Начнем с создания пустого листа, а затем импортируем данные из книги Excel.
-
Вставьте новый лист Excel и назовите его Sports.
-
Перейдите к папке, в которой содержатся загруженные файлы образцов данных, и откройте файл OlympicSports.xlsx.
-
Выберите и скопируйте данные на листе Sheet1. При выборе ячейки с данными, например, ячейки А1, можно нажать клавиши Ctrl + A, чтобы выбрать все смежные данные. Закройте книгу OlympicSports.xlsx.
-
На листе Sports поместите курсор в ячейку А1 и вставьте данные.
-
Нажмите клавиши Ctrl + T, чтобы отформатировать выделенные данные в виде таблицы. Кроме того, можно отформатировать данные в виде таблицы через ленту, выбрав команду ГЛАВНАЯ > Форматировать как таблицу. Поскольку у данных есть заголовки, установите флажок Таблица с заголовками в окне Создание таблицы, как показано ниже.
Форматирование данных в виде таблицы имеет множество преимуществ. Таблице можно присвоить имя, чтобы ее было легче идентифицировать. Также можно установить связи между таблицами, позволяющие просматривать и анализировать данные в сводных таблицах, Power Pivot и Power View. -
Присвойте таблице имя. В средстве > КОНСТРУКТОР > свойства, найдите поле Имя таблицы и введите Sports. Книга будет выглядеть так же, как на следующем экране.
-
Сохраните книгу.
Импорт данных с помощью копирования и вставки
Теперь, когда данные из книги Excel импортированы, давайте сделаем то же самое с данными из таблицы на веб-странице или из любого другого источника, дающего возможность копирования и вставки в Excel. На следующих этапах мы добавим из таблицы города, принимающие Олимпийские игры.
-
Вставьте новый лист Excel и назовите его Hosts.
-
Выделите и скопируйте приведенную ниже таблицу вместе с заголовками.
City |
NOC_CountryRegion |
Alpha-2 Code |
Edition |
Season |
Melbourne / Stockholm |
AUS |
AS |
1956 |
Summer |
Sydney |
AUS |
AS |
2000 |
Summer |
Innsbruck |
AUT |
AT |
1964 |
Winter |
Innsbruck |
AUT |
AT |
1976 |
Winter |
Antwerp |
BEL |
BE |
1920 |
Summer |
Antwerp |
BEL |
BE |
1920 |
Winter |
Montreal |
CAN |
CA |
1976 |
Summer |
Lake Placid |
CAN |
CA |
1980 |
Winter |
Calgary |
CAN |
CA |
1988 |
Winter |
St. Moritz |
SUI |
SZ |
1928 |
Winter |
St. Moritz |
SUI |
SZ |
1948 |
Winter |
Beijing |
CHN |
CH |
2008 |
Summer |
Berlin |
GER |
GM |
1936 |
Summer |
Garmisch-Partenkirchen |
GER |
GM |
1936 |
Winter |
Barcelona |
ESP |
SP |
1992 |
Summer |
Helsinki |
FIN |
FI |
1952 |
Summer |
Paris |
FRA |
FR |
1900 |
Summer |
Paris |
FRA |
FR |
1924 |
Summer |
Chamonix |
FRA |
FR |
1924 |
Winter |
Grenoble |
FRA |
FR |
1968 |
Winter |
Albertville |
FRA |
FR |
1992 |
Winter |
London |
GBR |
UK |
1908 |
Summer |
London |
GBR |
UK |
1908 |
Winter |
London |
GBR |
UK |
1948 |
Summer |
Munich |
GER |
DE |
1972 |
Summer |
Athens |
GRC |
GR |
2004 |
Summer |
Cortina d’Ampezzo |
ITA |
IT |
1956 |
Winter |
Rome |
ITA |
IT |
1960 |
Summer |
Turin |
ITA |
IT |
2006 |
Winter |
Tokyo |
JPN |
JA |
1964 |
Summer |
Sapporo |
JPN |
JA |
1972 |
Winter |
Nagano |
JPN |
JA |
1998 |
Winter |
Seoul |
KOR |
KS |
1988 |
Summer |
Mexico |
MEX |
MX |
1968 |
Summer |
Amsterdam |
NED |
NL |
1928 |
Summer |
Oslo |
NOR |
NO |
1952 |
Winter |
Lillehammer |
NOR |
NO |
1994 |
Winter |
Stockholm |
SWE |
SW |
1912 |
Summer |
St Louis |
USA |
US |
1904 |
Summer |
Los Angeles |
USA |
US |
1932 |
Summer |
Lake Placid |
USA |
US |
1932 |
Winter |
Squaw Valley |
USA |
US |
1960 |
Winter |
Moscow |
URS |
RU |
1980 |
Summer |
Los Angeles |
USA |
US |
1984 |
Summer |
Atlanta |
USA |
US |
1996 |
Summer |
Salt Lake City |
USA |
US |
2002 |
Winter |
Sarajevo |
YUG |
YU |
1984 |
Winter |
-
В Excel поместите курсор в ячейку А1 на листе Hosts и вставьте данные.
-
Отформатируйте данные в виде таблицы. Как описано выше, для форматирования данных в виде таблицы нажмите клавиши Ctrl + T или выберите пункт меню ГЛАВНАЯ > Форматировать как таблицу. Поскольку у данных есть заголовки, установите флажок Таблица с заголовками в окне Создание таблицы.
-
Присвойте таблице имя. На вкладках РАБОТА С ТАБЛИЦАМИ > КОНСТРУКТОР > Свойства найдите поле Имя таблицы и введите слово Hosts.
-
Выберите столбец Edition и на вкладке ГЛАВНАЯ задайте для него числовой формат с 0 десятичных знаков.
-
Сохраните книгу. Книга будет иметь следующий вид:
Теперь, когда у нас есть книги Excel с таблицами, можно создать отношения между ними. Создание связей между таблицами позволяет объединить данные двух таблиц.
Создание связи между импортированными данными
Мы уже можем начать использовать поля в сводной таблице из импортированных таблиц. Если не удается определить, как объединить поля в сводную таблицу, нужно создать связь с существующей моделью данных. На следующих этапах вы узнаете, как создать связь между данными, импортированными из разных источников.
-
На листе Лист1в верхней части поля таблицы щелкните Все, чтобы просмотреть полный список доступных таблиц, как показано на следующем экране.
-
Прокрутите список, чтобы увидеть новые таблицы, которые вы только что добавили.
-
Разверните пункт Sports и выберите пункт Sport, чтобы добавить в сводную таблицу. Обратите внимание, что Excel выдаст запрос на создание связи, как показано ниже.
Это уведомление появляется по той причине, что вы использовали поля таблицы, которая не является частью базовой модели данных. Один из способов добавить таблицу в модель данных заключается в создании связи с таблицей, которая уже есть в модели данных. Для создания связи в одной из таблиц должен содержаться столбец уникальных, не повторяющихся значений. В образце данных в таблице Disciplines, импортированной из базы данных, содержится поле с кодами видов спорта SportID. Эти же коды присутствуют в виде поля в импортированных нами данных Excel. Попробуем создать связь.
-
Нажмите кнопку СОЗДАТЬ… в выделенной области Поля сводной таблицы, чтобы открыть диалоговое окно Создание связи, как показано на приведенном ниже снимке экрана.
-
В области Таблица выберите пункт Disciplines из раскрывающегося списка.
-
В области Столбец (чужой) выберите пункт SportID.
-
В области Связанная таблица выберите пункт Sports.
-
В области Связанный столбец (первичный ключ) выберите пункт SportID.
-
Нажмите кнопку ОК.
Сводная таблица изменится с учетом новой связи. Но пока она имеет не совсем правильный вид из-за порядка полей в области СТРОКИ. Дисциплина — это подкатегория вида спорта, но поскольку мы расположили дисциплины выше видов спорта в области СТРОКИ, она не организована должным образом. Этот нежелательный порядок показан на приведенном ниже снимке экрана.
-
В области СТРОКИ переместит sport выше дисциплины. Это гораздо лучше, и в ней отображаются нужные данные, как показано на следующем экране.
При этом Excel создает модель данных, которую можно использовать глобально во всей книге в любой сводной таблице и диаграмме, а также в Power Pivot и отчете Power View. Основой модели данных являются связи между таблицами, определяющие пути навигации и вычисления данных.
В следующем учебнике Расширение связей модели данных с помощью Excel 2013,Power Pivot и DAX, вы можете использовать полученные сведения и расширить модель данных с помощью мощной и наглядной надстройки Excel под названием Power Pivot. Вы также узнаете, как вычислять столбцы в таблице и использовать его, чтобы в модель данных можно было добавить несвязанные таблицы.
Контрольная точка и тест
Повторение изученного материала
Теперь у вас есть книга Excel, которая содержит сводную таблицу с доступом к данным в нескольких таблицах (некоторые из них были импортированы отдельно). Вы освоили операции импорта из базы данных, из другой книги Excel, а также посредством копирования и вставки данных в Excel.
Чтобы данные работали вместе, потребовалось создать связь между таблицами, которую Excel использует для согласования строк. Вы также узнали, что наличие в таблице столбцов, согласующих данные в другой таблице, необходимо для создания связей и поиска связанных строк.
Вы готовы перейти к следующему учебнику этого цикла. Вот ссылка:
Расширение связей модели данных с использованием Excel 2013, Power Pivot и DAX
ТЕСТ
Хотите проверить, насколько хорошо вы усвоили пройденный материал? Приступим. Этот тест посвящен функциям, возможностям и требованиям, о которых вы узнали в этом учебнике. Внизу страницы вы найдете ответы на вопросы. Удачи!
Вопрос 1. Почему так важно преобразовывать импортируемые данные в таблицы?
A. Их не нужно преобразовывать в таблицы, потому что все импортированные данные преобразуются в таблицы автоматически.
Б. При преобразовании импортируемых данных в таблицы они исключаются из модели данных. Они доступны в сводных Power Pivot и Power View только в том случае, если они исключены из модели данных.
C. Если преобразовать импортированные данные в таблицы, их можно включить в модель данных, и они будут доступны в сводных таблицах, Power Pivot и Power View.
D. Импортированные данные нельзя преобразовать в таблицы.
Вопрос 2. Какие из указанных ниже источников данных можно импортировать в Excel и включить в модель данных?
A. Базы данных Access и многие другие базы данных.
B. Существующие файлы Excel.
C. Все, что можно скопировать и вставить в Excel, а также отформатировать как таблицу, включая таблицы данных на веб-сайтах, документы и любые иные данные, которые можно вставить в Excel.
D. Все вышеперечисленное.
Вопрос 3. Что произойдет в сводной таблице, если изменить порядок полей в четырех областях полей сводной таблицы?
A. Ничего. После размещения полей в области полей сводной таблицы их порядок изменить нельзя.
B. Формат сводной таблицы изменится в соответствии с макетом, но это не повлияет на базовые данные.
C. Формат сводной таблицы изменится в соответствии с макетом, но при этом базовые данные будут изменены без возможности восстановления.
D. Базовые данные изменятся, что приведет к созданию новых наборов данных.
Вопрос 4. Что необходимо для создания связи между таблицами?
A. Ни в одной из таблиц не может быть столбца, содержащего уникальные, не повторяющиеся значения.
B. Таблица не должна быть частью книги Excel.
C. Столбцы не должны быть преобразованы в таблицы.
D. Ни один из вышеперечисленных ответов не является правильным.
Ответы на вопросы теста
-
Правильный ответ: C
-
Правильный ответ: D
-
Правильный ответ: B
-
Правильный ответ: D
Примечания: Ниже перечислены источники данных и изображений в этом цикле учебников.
-
Набор данных об Олимпийских играх © Guardian News & Media Ltd.
-
Изображения флагов из справочника CIA Factbook (cia.gov).
-
Данные о населении из документов Всемирного банка (worldbank.org).
-
Авторы эмблем олимпийских видов спорта Thadius856 и Parutakupiu.
В Excel 2013 появился новый аналитический механизм: модель данных. Каждая рабочая книга располагает собственной внутренней моделью данных, упрощающей анализ разрозненных источников данных. [1] Идея, заложенная в основу модели данных, проста. Предположим, что в вашем распоряжении имеются две таблицы: Заказы (рис. 1) и Сотрудники (рис. 2). В таблице Заказы содержится информация о сделках (код сотрудника, дата и сумма счета-фактуры, период продаж). В таблице Сотрудники находится информация о сотрудниках: код, фамилия, имя и должность. Если нужно проанализировать суммы продаж в зависимости от должности сотрудника, следует объединить информацию, содержащуюся в двух таблицах. Чтобы ваши данные имели вид Таблицы – инструмента Excel(поэтому пишется с заглавной буквы) – кликните на любой ячейке таблицы данных и выполните команду Создать Таблицу: Ctrl+T.
Рис. 1. Информация о сделках
Скачать заметку в формате Word или pdf, примеры в формате Excel
Рис. 2. Информация о сотрудниках
Выполнение подобной задачи в прошлом потребовало бы использования множества формул ВПР, СУММЕСЛИ и других. После появления модели данных в Excel 2013 достаточно объявить обе таблицы связанными (по коду сотрудника) и включить их в модель данных. Модель данных Excel создает куб аналитики на основе связи между кодами сотрудников и передает нужные данные в сводную таблицу.
Наша задача заключается в том, чтобы отобразить суммы продаж в зависимости от должности сотрудника. В прежних версиях Excel решить подобную задачу было непросто, поскольку сведения о продажах и должностях сотрудников находились в отдельных таблицах. После появления модели данных достаточно выполнить следующие действия:
1. Щелкните в области таблицы Заказы и начните создавать новую сводную таблицу, выбрав команду Вставка → Сводная таблица.
2. В диалоговом окне Создание сводной таблицы установите флажок Добавить данные в модель данных (рис. 3). Обратите внимание на то, что в окне Создание сводной таблицы находится ссылка на именованный диапазон (Таблицу данных); в нашем примере – Заказы. Рекомендуется присваивать говорящие имена Таблицам данных. Это облегчит распознавание таблиц, находящихся в модели данных. Если не присваивать названия Таблицам данных, модель данных отобразит их под названиями Таблица 1, Таблица2 и т.д. Чтобы назначить Таблице данных имя, кликните на Таблице, перейдите на контекстную вкладку Работа с данными → Конструктор и в поле Имя таблицы введите говорящее имя. Повторите эту операцию для всех остальных Таблиц.
Рис. 3. Создайте сводную таблицу на основе таблицы данных Заказы
3. Щелкните в области таблицы данных Сотрудники и начните создавать новую сводную таблицу. Не забудьте установить флажок Добавить эти данные в модель данных.
4. После добавления таблиц в модель данных перейдите к списку полей сводной таблицы и выберите переключатель ВСЕ. В списке полей появятся два диапазона, соответствующие таблицам данных (рис. 4).
Рис. 4. В списке полей сводной таблицы выберите параметр ВСЕ, чтобы получить доступ ко всем таблицам, находящимся в модели данных
5. Создайте сводную таблицу обычным образом. В новой таблице поле Должность появится в области СТРОКИ, а поле Сумма по столбцу Объем продаж — в области ЗНАЧЕНИЯ. Программа тут же распознает, что используются две таблицы из модели данных, и предлагает создать связь между ними (рис. 5). Щелкните на кнопке Создать.
Рис. 5. Выберите создание связи между таблицами после отображения соответствующего запроса
6. На экране появится диалоговое окно Создание связи (рис. 6). В этом окне можно выбрать таблицы и поля, для которых создается связь. На этом рисунке показана таблица Заказы с полем Код сотрудника. Эта таблица связана с таблицей Сотрудники с помощью поля Код сотрудника.
Рис. 6. Создайте подходящую связь, используя раскрывающиеся списки
7. После создания связи можно использовать данные из двух таблиц для отображения требуемых результатов. Применение модели данных проиллюстрировано на рис. 7.
Рис. 7. Отображение объема продаж по должностям сотрудников
Первичные ключи. Обратите внимание на рис. 6 на раскрывающийся список Связанный столбец (первичный ключ). Это означает, что модель данных использует поле, относящееся к связанной таблице, в качестве первичного ключа. Первичный ключ — это поле, содержащее лишь уникальные ненулевые значения (без дубликатов и пустых значений). Первичные ключи применяются в модели данных в целях предотвращения ошибок суммирования и дубликатов. В каждой связи должен быть хотя бы один первичный ключ. Поскольку поле Код сотрудника, находящееся в таблице Сотрудники, является первичным ключом, оно должно включать только уникальные значения (без пробелов и нулевых значений). Первичный ключ обеспечивает единственный способ сохранения целостности данных при объединении нескольких таблиц.
Управление связями в модели данных
После включения таблиц во внутреннюю модель данных может потребоваться настройка связей, установленных между ними. Чтобы изменить связи модели данных, отобразите диалоговое окно Управление связями. Для этого выберите вкладку ленты Данные и в области Работа с данными щелкните на кнопке Отношения. Требуемое окно появится на экране (рис. 8).
Рис. 8. В диалоговом окне Управление связями можно изменить связи, заданные в модели данных
В этом окне доступны следующие команды, применяемые для изменения связей между таблицами:
- Создать. Создание новой связи между таблицами модели данных.
- Изменить. Изменение выделенной связи.
- Активировать. Активизация выбранной связи, вследствие чего Excel будет рассматривать данную связь при агрегировании и анализе данных в модели.
- Деактивировать. Отключение выбранной связи. Это приведет к тому, что Excel будет игнорировать связь при агрегировании и анализе данных в модели.
- Удалить. Удаление выбранной связи.
Добавление новой таблицы в модель данных. Чтобы добавить новую таблицу в модель данных, воспользуйтесь одним из следующих двух способов.
Во-первых, можно создать сводную таблицу на основе новой Таблицы данных (в нашем примере – Местоположения). В окне создания сводной таблицы установите флажок Добавить эти данные в модель данных. Excel добавит Таблицу в модель данных и создаст сводную таблицу. После добавления сводной таблицы можно открыть диалоговое окно Управление связями и создать нужные связи.
Второй (и более гибкий) способ заключается в том, чтобы создать таблицу вручную и добавить ее в модель данных. Выполните следующие действия.
1. Если вы еще не создали Таблицу, поместите курсор в таблицу данных (лист ExcelМестоположения, любую ячейку в диапазоне А1:С55), перейдите на вкладку Вставка щелкните на кнопке Таблица (рис. 9). Можно, встав в ячейку таблицы данных, нажать Ctrl+T. На экране появится диалоговое окно (рис. 10), в котором задается диапазон данных. Нажмите Ok. Программа преобразует этот диапазон в Таблицу, которая может распознаваться внутренней моделью данных.
Рис. 9. Создание Таблицы на основе исходных данных
Рис. 10. Преобразование диапазона в таблицу
2. На контекстной вкладке Работа с таблицами → Конструктор, измените значение поля Имя таблицы, выбрав легко запоминаемое имя; в нашем примере – Отделения.
3. Перейдите на вкладку ленты Данные и в области Подключения щелкните на кнопке Подключения. На экране появится диалоговое окно Подключения к книге (рис. 11). Щелкните на стрелке раскрывающегося списка, находящейся справа от кнопки Добавить, и выберите пункт Добавить в модель данных.
Рис. 11. Откройте диалоговое окно Подключения к книге и выберите пункт меню Добавить в модель данных
4. На экране появится диалоговое окно Существующие подключения (рис. 12). Перейдите на вкладку Таблицы и выделите только что созданную Таблицу. Щелкните на кнопке Открыть, чтобы добавить выбранную таблицу в модель данных.
Рис. 12. В окне Существующие подключения перейдите на вкладку Таблицы, выделите только что созданную Таблицу и щелкните Открыть
5. Все сводные таблицы, созданные на основе модели данных, обновляются с учетом добавления новой таблицы. Не забудьте открыть диалоговое окно Управление связями и создать требуемую связь.
Удаление таблицы из модели данных. Иногда возникает необходимость в удалении Таблицы или источника из модели данных. Чтобы выполнить эту задачу, выберите вкладку ленты Данные и щелкните на кнопке Подключения. На экране появится диалоговое окно Подключения к книге (рис. 13). Выберите таблицу, а затем кликните на кнопке Удалить.
Рис. 13. С помощью окна Подключения к книге можно удалить любую таблицу из внутренней модели данных
Создание новой сводной таблицы с помощью модели данных. Иногда приходится создавать сводные таблицы «с нуля», используя в качестве источника данных существующую внутреннюю модель данных. Для этого выполните следующие действия.
1. Выполните команду Вставка → Сводная таблица. Отобразится диалоговое окно Создание сводной таблицы. Установите флажок Использовать внешний источник данных (рис. 14), и щелкните на кнопке Выбрать подключение.
Рис. 14. Окно Создание сводной таблицы
2. На экране появится диалоговое окно Существующие подключения (рис. 15). На вкладке Таблицы выберите параметр Таблицы в модели данных книги и щелкните на кнопке Открыть.
Рис. 15. Окно Существующие подключения
3. Вы вернитесь обратно в диалоговое окно Создание сводной таблицы. Щелкните ОК.
4. Если создание сводной таблицы завершилось удачно, появится панель области задач Поля сводной таблицы, отображающая все таблицы, включенные во внутреннюю модель данных (рис. 16).
Рис. 16. После успешного завершения создания сводной таблицы отображаются все таблицы, относящиеся к модели данных
Ограничения внутренней модели данных
Как и все остальное в Excel, внутренняя модель данных имеет определенные ограничения:
[1] Заметка написана на основе книги Джелен, Александер. Сводные таблицы в Microsoft Excel 2013. Глава 7.
Рекомендуемые сводные таблицы
На вкладке Вставка (Insert) появилась кнопка Рекомендуемые сводные таблицы (Recommended Pivot Tables), предлагающая несколько подходящих сводных таблиц разного типа на выбор в зависимости от вида исходных данных:
Для тех, кто точно знает, что хочет увидеть в своем отчете и будет делать его самостоятельно — штука бесполезная, но для начинающих пользователей — приятная помощь. Из готовых вариантов выбрать иногда проще.
Фильтрация с помощью Временной Шкалы
К возможности фильтровать сводные таблицы срезами (slicers), появившейся в Excel 2010, добавили Временную шкалу (Timeline) — интерактивную графическую ось времени, которую можно вставить на вкладке Анализ (Analysis) . Выделив любой временной интервал на оси, мы получим в привязанной к ней сводной результаты именно за выбранный период:
Новый механизм расчета сводных таблиц (Data Object Model)
В Excel 2013 впервые реализована возможность строить сводные таблицы не на основе классического механизма кэша, как во всех прошлых версиях до этого. Теперь при построении сводной таблицы можно установить в нижней части диалога неприметную галочку Добавить эти данные в модель данных (Add to Data Object Model) и, тем самым, использовать для построения сводной «движок» Power Pivot, т.е. по-сути полноценную базу данных, встроенную в Excel:
Именно объектная модель позволяет сделать один из самых впечатляющих трюков этой версии — построить сводную сразу по нескольким диапазонам данных.
Связи и сводная по нескольким таблицам
На вкладке Данные (Data) появилась кнопка Отношения (Relationships), позволяющая связать нескольких таблиц по ключевым полям (столбцам) с помощью вот такого диалога:
Нюанс в том, что подчиненная (вторая) таблица должна содержать только уникальные значения элементов в ключевом поле — иначе связь создать не получится. Если сначала связать две таблицы, а потом начать строить сводную по одной из них, то в списке полей будут отображаться заголовки столбцов не только текущей, а уже обеих связанных таблиц:
Если попытаться забросить в одну сводную поля из разных таблиц, то в списке полей появится подсказка о возможной недостающей связи, которую надо создать:
Функция подсчета количества уникальных элементов
Если вы строите сводную с использованием Data Object Model, то в списке функций производимых над данными (правой кнопкой мыши по полю — Параметры поля) добавится еще одна новая — Число различных элементов (Distinct Count). Она вычислит не общее количество непустых элементов, как обычная функция Счет (Count), а количество неповторяющихся представителей.
В приведенном выше примере для сравнения подсчитывается общее количество проданных товаров и количество уникальных наименований по каждому городу.
Экспресс-просмотр
Тем, кто работает со сводными таблицами, известна простая, но крайне полезная функция: если сделать двойной щелчок по любой ячейке с числовым результатом в области значений, то на отдельный лист будет выведена детализация по этой ячейке. Это позволяет оперативно проверить исходные данные и понять откуда получился такой результат.
Логическим продолжением и развитием этой идеи стала новая функция Экспресс-просмотр (Quick Explore) в сводных таблицах Excel 2013.
При выделении в сводной любой ячейки с числовым результатом рядом появляется смарт-тег Экспресс-просмотра. Нажав на него, можно выбрать нужную нам таблицу (если сводная строится по нескольким таблицам) и интересующее нас поле для детализации. Так, например, если я выделю ячейку с результатами продаж менеджера Иванова и выберу поле Заказчик для детализации:
… то получу на выходе новую сводную таблицу с подробными результатами продаж именно Иванова по всем заказчикам:
Недостатки
Из замеченного в процессе работы:
- В сводных таблицах построенных на основе Объектной модели не работает группировка. Это хоть и не критично, но печально. Будем надеяться, что исправят.
- Иногда названия столбцов в списке полей не соответствуют реальности, т.е. берутся не из ячеек шапки, а непонятно откуда. Помогает предварительное форматирование исходных диапазонов как «умных» таблиц.
- Для выгрузки исходных данных из Объектной модели приходится использовать команду Данные — Подключения (Data — Connections).
Data Model is available in Excel 2013 and later versions. In Excel, you can use the Data Model to integrate data from multiple tables in the current workbook and / or from the imported data and / or from the data sources connected to the workbook through data connections.
With a Data Model, you can create relationships among the tables. Data model is used transparently in PivotTable, PivotChart, PowerPivot and Power View reports.
Creating Data Model while Importing Data
When you import data from relational databases like Microsoft Access database that contain multiple related tables, Data Model is automatically created if you import more than one table at once.
You can optionally add tables to the Data Model, when you import data from the following data sources −
- Relational databases, one table at a time
- Text Files
- Excel Workbooks
For example, while you are importing data from an Excel workbook, you can observe the option Add this data to the Data Model, with an enabled check box.
If you want to add the data you are importing to the Data Model, check the box.
Creating Data Model from Excel Tables
You can create the Data Model from Excel tables using PowerPivot commands. You will learn PowerPivot in detail in later chapters.
All the Data Model commands are available under the PowerPivot tab on the Ribbon. You can add Excel tables to the Data Model with these commands.
Consider the following sales data workbook, wherein you have Product Catalog worksheet that contains Product, Product ID and Price. You have four worksheets for the sales in 4 regions – East, North, South and West.
Each of these four worksheets contain No. of Units sold and Total Amount for each of the Products in each month. You need to calculate the total amount for each of the products in each region and total amount of sales in each region.
The following steps enable you to arrive at the desired results −
- Start with creating the Data Model.
- Click in the Product Catalog worksheet.
- Click the POWERPIVOT tab on the Ribbon.
- Click Add to Data Model. The Create Table dialog box appears.
- Select the table range.
- Check the box My table has headers. Click OK.
A new window – PowerPivot for Excel — <your Excel file name> appears.
The following message appears in the center of the blank window −
The table Product Backlog that you added to the Data Model appears as a sheet in PowerPivot window. Each row in the table is a record and you can go back and forth the records using the left and right arrow buttons at the bottom of the window.
- Click the Linked Table tab in the PowerPivot window.
- Click Go to Excel Table.
The Excel data window appears.
- Click the worksheet tab – East.
- Click the POWERPIVOT tab on the Ribbon.
- Click Add to Data Model.
Another sheet appears in the PowerPivot window displaying the East table.
Repeat for the worksheets – North, South and West. In all, you have added five tables to the Data Model. Your PowerPivot window looks as below −
Creating Relationships between Tables
If you want to make calculations across the tables, you have to first define relationships among them.
-
Click the Home tab on the Ribbon in the PowerPivot window. As you can observe, the tables are displayed in the Data View.
-
Click Diagram View.
The tables appear in the Diagram View. As you observe, some of the tables may be out of display area and all the fields in the tables may not be visible.
- Resize each table to show all the fields in that table.
- Drag and arrange the tables so that all are displayed.
- In the East table, click on Product ID.
- Click the Design tab on the Ribbon.
- Click Create Relationship. The Create Relationship dialog box appears.
In the box under Table, East is displayed. In the box under Column, Product ID is displayed.
- In the box under Related Lookup Table, select Product Catalog.
- Product ID appears in the box under Related Lookup Column.
- Click the Create button.
Line representing Relationship between the tables East and Product Backlog appears.
- Repeat the same steps for the tables – North, South and West. Relationship Lines appear.
Summarizing the Data in the Tables in the Data Model
Now, you are all set to summarize the sales data for each of the products in each region in just few steps.
- Click the Home tab.
- Click PivotTable.
- Select PivotTable from the drop-down list.
Create PivotTable dialog box appears in the Excel tables window. Select New Worksheet.
In a new worksheet, an empty PivotTable appears. As you can observe, the Fields List contains all the tables in the Data Model with all the fields displayed.
-
Select Product ID from Table 1 (Product Catalog).
-
Select Total Amount from the other four tables.
-
For each of fields in ∑ Values, change the Custom Name in Value Field Settings to display the region names as column labels.
The sum of Total Amount will be replaced by the label you give. PivotTable with summarized values from all the data tables shows you the required results.
Adding Data to Data Model
You can add a new data table to the Data Model or new rows of data to the existing tables in the Data Model.
Add a new data table to the Data Model with the following steps.
-
Click the DATA tab on the Ribbon.
-
Click Existing Connections in the Get External Data group. The Existing Connections dialog box appears.
-
Click the Tables tab. The names of all the tables in the workbook will be displayed.
-
Click the name of the table you want to add to the Data Model.
Click on the Open button. The Import Data dialog box appears.
As you are aware, while importing data table, it is automatically added to the Data Model. The newly added table appears in the PowerPivot window.
Add new rows of data to the existing tables in the Data Model.
Refresh the Data Connection. New rows of data from the data source get added to the Data Model.