Использование надстройки PowerPivot в Excel 2013 Pro Plus

Если ваша версия Excel 2013 поддерживает надстройку PowerPivot, вы сможете:

· Загрузить данные в PowerPivot можно различными способами. В вашем распоряжении имеется множество источников данных, связанные таблицы, возможность копирования и вставки данных, а также возможность создания подписок.

· В таблицах PowerPivot можно просматривать, сортировать и фильтровать данные.

· Можно импортировать миллионы строк в единственный рабочий лист таблицы PowerPivot.

· Можно создавать формулы DAX как в таблице, так и в виде нового вычисляемого поля, называемого мерой. Аббревиатура DAX расшифровывается как Data Analysis Expressions (Выражения анализа данных). В состав DAX входят 117 функций, которые позволяют выполнять две разновидности вычислений. 81 стандартную функцию Excel можно применять для добавления вычисляемых столбцов в таблицу, находящуюся в окне PowerPoint. А с помощью 54 функций можно создавать новые меры в сводных таблицах. Благодаря этим функциям сводные таблицы получают невиданные ранее возможности.

· В вашем распоряжении имеются дополнительные способы создания связей, включая представление диаграмм, применяемое для отображения связей.

· Можно скрывать или переименовывать столбцы.

· Перед созданием сводной таблицы можно задать числовое форматирование для столбца.

· Появилась возможность назначать категории полям, например, география, URL ссылка на изображение или веб-ссылка.

· Можно определять ключевые показатели эффективности либо иерархии.

· Если в вашей компании установлен сервер PowerPivot Server, вы получите возможность публиковать интерактивные отчеты PowerPivot на сайте SharePoint. 

Если вы планируете обрабатывать миллионы записей, установите 64-разрядные версии Office и PowerPivot. В этом случае останутся в силе ограничения, связанные с недостатком оперативной памяти, но они частично нивелируются благодаря тому, что PowerPivot может практически в 10 раз сжимать данные, хранящиеся в файле PowerPivot. В 64-разрядной версии Office 2013 обеспечивается доступ к памяти, превышающей предел в 4 Гбайт, заданный для 32-разрядной версии Windows.

Активизация надстройки PowerPivot.Если вы имеете дело с Office 365, Office 2013 Pro Plus, Office 2013 Enterprise либо коробочной версией Excel 2013, вы сможете получить доступ к надстройке PowerPivot. Чтобы активизировать эту надстройку, выполните следующие действия:

1. Откройте Excel 2013. Видите вкладку ленты PowerPivot (рис. 8)? Если да, можете не выполнять следующие действия.

2. Выполните команду Файл g Параметры, выберите пункт Надстройки. В раскрывающемся списке Управление, находящемся в нижней части окна, выберите пункт Надстройки COM и щелкните на кнопке Перейти (рис. 9а).

3. В списке доступных надстроек СОМ найдите надстройку Microsoft Office PowerPivot for Excel 2013. Установите соответствующий флажок и щелкните на кнопке ОК (рис. 9б). (Учтите, что вам нужна надстройка PowerPivot for Excel 2013. Устаревшая надстройка "PowerPivot for Excel" использовавшаяся в Excel 2010, в Excel 2013 не поддерживается.)

4. Если на ленте не отображается вкладка PowerPivot, завершите выполнение программы Excel 2013 и снова запустите ее.

После установки надстройки на ленте Excel 2013 появится вкладка PowerPivot (рис. 8).

Использование надстройки PowerPivot в Excel 2013 Pro Plus - student2.ru

Рис. 8. Вкладка PowerPivot

Использование надстройки PowerPivot в Excel 2013 Pro Plus - student2.ru

Рис. 9. Установка надстройки PowerPivot

Импорт текстового файла.Исходная таблица включает 1,8 млн. записей, находящихся в файле BigDatal.txt (часть файла в окне программы Блокнот показана на рис. 10). Заголовки столбцов находятся в первой строке файла. Может потребоваться удаление нестандартных строк, находящихся в верхней части файла, дабы избежать проблем при их обработке с помощью надстройки PowerPivot. К сожалению, даты в файле имеют американский формат, поэтому в дальнейшем обрабатываются некорректно.

Использование надстройки PowerPivot в Excel 2013 Pro Plus - student2.ru

Рис. 10. Этот файл, содержащий 1,8 млн. строк, слишком велик для Excel

Для импорта файла, содержащего 1,8 млн. строк, в PowerPivot выполните следующие действия.

1. Перейдите вкладку PowerPivot. Щелкните на значке Управление. На экране появится окно приложения PowerPivot, в котором отображается собственная лента (рис. 11). В этом окне центральное место занимает таблица, с помощью которой можно просматривать данные в модели PowerPivot. В окне PowerPivot находятся следующие три вкладки: В начало, Конструктор и Дополнительно.

Использование надстройки PowerPivot в Excel 2013 Pro Plus - student2.ru

Рис. 11. Щелкните на значке Управление, находящемся на вкладке PowerPivot ленты Excel, чтобы открыть окно надстройки PowerPivot, в котором отображается собственная лента

2. Импортируйте таблицу из файла BigDatal.txt. Для этого в группе Получение внешних данных щелкните на кнопке Из других источников. На экране появится диалоговое окно Мастер импорта таблиц.

3. В окне Мастер импорта таблиц выберите самый нижний пункт Текстовый файл. Щелкните на кнопке Далее.

4. Введите в поле Понятное имя соединения имя для своего соединения.

5. Щелкните на кнопке Обзор и найдите текстовый файл. Если данные включают заголовки, PowerPivot обнаружит их.

6. Проверьте, чтобы в качестве разделителя была выбрана запятая. В раскрывающемся списке Разделитель столбцов отображается ряд стандартных разделителей, таких как запятая, точка с запятой, вертикальная черта и др.

7. Если хотите отказаться от импорта какого-либо столбца, отмените установку соответствующих флажков. Текстовый файл готов к загрузке в оперативную память. Учтите, что можно существенно уменьшить объем используемой оперативной памяти, если исключить лишние столбцы, особенно когда они включают длинные текстовые значения. Для этого сбросьте флажки, соответствующие скрываемым столбцам (рис. 12).

Использование надстройки PowerPivot в Excel 2013 Pro Plus - student2.ru

Рис. 12. Настройка мастера импорта таблиц

8. Обратите внимание: каждому полю соответствуют раскрывающиеся списки фильтров. С помощью этих списков можно сортировать и фильтровать наборы данных, включающие десятки и сотни тысяч записей (например, исключать определенные данные из отчета). Только учтите, что при большом количестве записей эти операции выполняются очень медленно.

9. После щелчка на кнопке Готово PowerPivot начинает загружать файл в память. При этом отображается количество строк, загруженное в настоящий момент (рис. 13).

Использование надстройки PowerPivot в Excel 2013 Pro Plus - student2.ru

Рис. 13. Всего лишь за несколько секунд надстройка PowerPivot загрузила 1 550 000 строк

10. После завершения импорта файла отображается количество загруженных строк. Щелкните на кнопке Закрыть, чтобы вернуться в окно PowerPivot.

11. В окне PowerPivot отображается 1,8 млн. записей. Для их просмотра можно воспользоваться вертикальной полосой прокрутки. Можно также выполнить сортировку, изменить числовой формат либо применить фильтр (рис. 14).

Использование надстройки PowerPivot в Excel 2013 Pro Plus - student2.ru

Рис. 14. Записи отображаются в виде сетки, которая напоминает обычную таблицу Excel

Назначьте столбцам числовой формат. Поле даты предназначено для хранения даты и времени. Если исходные данные не включают компонент времени, выберите заголовок даты и воспользуйтесь раскрывающимся списком Формат, находящимся в группе Форматирование вкладки В начало ленты PowerPivot. Выберите формат 14.03.2001. К столбцу Доход примените формат валюты. Если не хотите, чтобы в сводной таблице отображались цифры после запятой, уменьшите до нуля количество цифр после запятой.

Если щелкнуть на столбце правой кнопкой мыши, отобразится контекстное меню, с помощью которого можно переименовывать, фиксировать и копировать столбцы. С помощью этого меню можно скрывать столбец из списка полей сводной таблицы в Excel.

Несмотря на то что PowerPivot выглядит как Excel, на самом деле это не Excel. Вы не сможете изменять отдельные ячейки. Если в ячейку Е1 добавить формулу, вычисляющую сумму, эта формула будет автоматически скопирована во все строки. Если отформатировать значение в одной ячейке, все ячейки в этом столбце будут также отформатированы.

Чтобы изменить ширину столбцов, перетащите границу между названиями столбцов (как в Excel). 

Итак, у вас есть 1,8 млн. записей, которые можно сортировать, фильтровать и объединять в сводные таблицы. Обратите внимание на то, что 1,8 млн. строк, импортированных из текстового файла, хранятся в книге Excel. Можно скопировать файл .xlsx на новый компьютер, после чего все строки окажутся на новом компьютере. Исходный текстовый файл имеет размер 58 Мбайт, а сжатый файл Excel имеет размер всего лишь 4 Мбайт.

Добавление данных Excel методом копирования и вставки.В нашем примере таблицы PowerPivot информация о магазине ограничивалась лишь полем Код [магазина]. Сведения о названии либо местоположении магазина отсутствовали. Проблему можно устранить с помощью небольшого файла Excel, в котором коды магазинов сопоставляются с названиями и другой идентификационной информацией. Эти данные можно добавить на новую вкладку в окне PowerPivot. Можно воспользоваться копированием и вставкой, как описано ниже, либо создать связанную таблицу (см. следующий раздел), которая удобнее в применении.

Чтобы воспользоваться операциями копирования и вставки, выполните следующие действия:

1. Откройте рабочую книгу, содержащую диапазон, который связывает идентификаторы магазинов с названиями (рис. 15).

2. Выделите данные с помощью комбинации клавиш Ctrl+Shift*.

3. Скопируйте данные, нажав комбинацию клавиш Ctrl+C. 

4. Перейдите на вкладку PowerPivot в Excel.

5. Щелкните на кнопке Управление, чтобы открыть окно PowerPivot. Теперь вы сможете увидеть предварительно импортированный набор данных, включающий 1,8 млн. строк.

6. В левой части вкладки В начало окна PowerPivot щелкните на значке Вставить. На экране появится диалоговое окно Просмотр вставки.

7. Присвойте новой таблице более понятное имя, чем заданное по умолчанию имя Таблица, например, Магазины (рис. 16). Щелкните на кнопке ОК.

Использование надстройки PowerPivot в Excel 2013 Pro Plus - student2.ru

Рис. 15. Таблица кодов и названий магазинов

Использование надстройки PowerPivot в Excel 2013 Pro Plus - student2.ru

Рис. 16. Окно Просмотр вставки

В окне PowerPivot появилась новая вкладка Магазины, на которой находятся дополнительные сведения о магазинах. Обратите внимание: в нижней части окна PowerPivot находятся ярлычки рабочих листов (рис. 17). Данные, вставленные из буфера обмена, представляют собой статическую копию данных Excel. Если данные Excel изменяются, скопируйте их и выполните команду PowerPivot Вставить с заменой.

Использование надстройки PowerPivot в Excel 2013 Pro Plus - student2.ru

Рис. 17. Ярлычки рабочих листов окна PowerPivot

Добавление данных Excel с помощью связывания.В предыдущем разделе была добавлена таблица Магазины путем выполнения операций копирования и вставки. При этом фактически создаются две копии данных. Одна из них хранится на рабочем листе Excel, а вторая — в окне PowerPivot. Если изменяется исходный лист, содержимое окна PowerPivot остается неизменным. Если подобная ситуация вас не устраивает, свяжите данные из таблицы Excel с данными в окне PowerPivot:

1. Для начала, преобразуйте данные (как на рис. 15) в таблицу, встав на любую ячейку диапазона и нажав Ctrl+T.

2. Выберите контекстную вкладку Конструктор. В левой части ленты отображается название только что созданной таблицы — Таблица1. В этом поле введите новое имя, например, Код_магазина.

3. Перейдите на вкладку PowerPivot и в группе Таблицы кликните Добавить в модель данных. Создастся копия таблицы, которая отображается в окне PowerPivot (рис. 18).

Использование надстройки PowerPivot в Excel 2013 Pro Plus - student2.ru

Рис. 18. Новая таблица в PowerPivot – Код_магазина

Определение связей.Обычно для связывания двух таблиц в Excel используется функция ВПР. В PowerPivot эта задача решается гораздо проще:

1. В окне PowerPivot перейдите на вкладку В начало и щелкните на кнопке Представление диаграммы. Отобразятся две таблицы, находящиеся рядом друг с другом (рис. 19).

Использование надстройки PowerPivot в Excel 2013 Pro Plus - student2.ru

Рис. 19. Перетащите одно поле на другое для создания связи

2. Щелкните в поле Код в основной таблице (BigData) перетащите, и отпустите его, находясь над полем Код магазина области Магазины. Появятся стрелки, соответствующие установленной связи.

3. Чтобы вернуться к таблице PowerPivot, щелкните на значке Представление данных, находящемся на вкладке В начало окна PowerPivot.

Добавление вычисляемых столбцов с помощью DAX.Один из недостатков сводных таблиц, созданных на основе данных PowerPivot, заключается в том, что они не могут обеспечить автоматическую группировку ежедневных данных по годам. Поэтому перед созданием сводной таблицы воспользуйтесь языком формул DAX для добавления нового вычисляемого столбца в таблицу PowerPivot.

1. Перейдите на закладку PowerPivot. Щелкните на кнопке Управление и в открывшемся окне щелкните на ярлычке первого рабочего листа – Продажи, находящемся в нижней части окна PowerPivot.

2. Крайний правый столбец называется Добавление столбца. Щелкните на первой ячейке этого пустого столбца.

3. Щелкните на значке fx, находящемся в левой части строки формул. На экране появится диалоговое окно Вставить функцию, включающее целый ряд категорий. Выберите категорию Дата и время. Обратите внимание: отображаемые в этом списке функции отличаются от функций из категории Дата и время в Excel.

4. Прокрутите список и выберите функцию YEAR и нажмите OK (рис. 20). Щелкните на заголовке столбца Дата заказа. Надстройка PowerPivot предлагает формулу =YEAR([Дата заказа]. Завершите создание формулы путем ввода закрывающей скобки и нажатия клавиши Enter. Excel заполняет столбец значениями года, связанного с датой.

5. Щелкните правой кнопкой мыши на столбце и в контекстном меню выберите параметр Переименовать столбец. Введите новое имя столбца, например, Год (рис. 21).

Использование надстройки PowerPivot в Excel 2013 Pro Plus - student2.ru

Рис. 20. Вставка функции YEAR

Использование надстройки PowerPivot в Excel 2013 Pro Plus - student2.ru

Рис. 21. Формула YEAR

Создание сводной таблицы:

1. Перейдите навкладку В начало ленты PowerPivot. Раскройте список, находящийся под кнопкой Сводная таблица и выберите пункт Сводная таблица (рис. 22).

2. В открывшемся окне выберите переключатель, определяющий вставку сводной таблицы на новый лист. Вы снова вернетесь в окно Excel. В списке полей сводной таблицы отобразятся все таблицы, содержащиеся в PowerPivot. Чтобы просмотреть поля, входящие в каждую таблицы, раскройте соответствующий таблице список (нажав на «треугольник»).

3. В списке полей PowerPivot откройте таблицу BigData и выберите поле Доход. Разверните таблицу Магазины о и выберите в ней поле Регион. Excel сформирует сводную таблицу, отображающую продажи по регионам (рис. 23). Итак, в вашем распоряжении оказалась сводная таблица, которая построена на основе 1,8 млн. строк данных и содержит виртуальную ссылку на связанную таблицу.

Использование надстройки PowerPivot в Excel 2013 Pro Plus - student2.ru

Рис. 22. Создание сводной таблицы в окне PowerPivot

Использование надстройки PowerPivot в Excel 2013 Pro Plus - student2.ru

Рис. 23. Эта сводная таблица суммирует 1,8 млн. строк, а также использует данные из двух таблиц

Далее можно воспользоваться инструментами из набора контекстных вкладок Работа со сводными таблицами для форматирования сводной таблицы. Например, можно применить валютный формат и переименовать поле Сумма по столбцу Доход, выбрать формат с чередующимися строками и т.п.

Различия между сводными таблицами PowerPivot и Excel.Если до сих пор вы создавали только обычные сводные таблицы Excel, сводные таблицы PowerPivot могут показаться вам неудобными. Причина появления многих проблем связана не с самой надстройкой PowerPivot, а с тем, что сводная таблица PowerPivot является сводной таблицей OLAP и ведет себя соответствующим образом. При работе со сводными таблицами PowerPivot следует учитывать, что:

· Отсутствует автоматическая сортировка по дням недели (понедельник, вторник, среда и т.д.). Для выполнения корректной сортировки выберите команду Дополнительные параметры сортировки g По возрастанию g Дополнительно. Отмените установку флажка Автосортировка, раскройте список Сортировка по первому ключу и выберите последовательность Понедельник, Вторник, Среда, Четверг, Пятница, Суббота, Воскресенье.

· Для сортировки полей в обычных сводных таблицах можно воспользоваться следующим приемом (вместо перетаскивания). Выберите ячейку, содержащую, например, слово Пятница, и введите в эту ячейку слово Понедельник. После нажатия клавиши Enter данные из столбца Понедельник переместятся в новый столбец. Учтите, что этот прием неприменим при работе со сводными таблицами PowerPivot.

· В процессе ввода формул с помощью интерфейса Excel включаемые в них ячейки можно выбрать щелчком мыши либо с помощью клавиш управления курсором. Вероятно, надстройка PowerPivot создавалась фанатами мыши, поэтому при создании формул PowerPivot можно использовать только мышь.

· После щелчка на кнопке Обновить, находящейся на контекстной вкладке Анализ, Excel обновляет данные в сводной таблице. Подумайте, прежде чем делать это в Excel 2013. В рассматриваемом примере выполняется повторный импорт 1,8 млн. строк.

Два вида вычислений DAX

Только что мы рассматрели пример использования функции DAX (YEAR) для объявления вычисляемого столбца в таблице, которая отображается в окне PowerPivot. Для создания подобных столбцов используется 81 функция, большинство из которых копируются непосредственно из Excel. Многие из функций DAX аналогичны соответствующим функциям Excel за некоторыми исключениями, которые будут рассмотрены ниже. С помощью DAX также можно создавать новые вычисляемые поля в сводной таблице. Эти функции предназначены не для вычисления единственного значения ячейки, а для определения значений отфильтрованных строк, связанных с ячейками сводной таблицы (агрегирующие функции). В DAX имеется 54 таких функций. Реальная мощь PowerPivot заключается именно в этих функциях.

Использование функций DAX в вычисляемых столбцах.Такие функции весьма напоминают обычные функции Excel, поэтому для большинства из них не требуются дополнительные объяснения. Но некоторые функции DAX отличаются от функций Excel:

· Редко упоминаемая функция Excel РАЗНДАТ переименована в YEARFRAC, а ее код переписан. Собственно говоря, самой функции РАЗНДАТ нет в справке Excel. Более того нет ее и в мастере функций. И при наборе вручную первых букв названия функции Excel тоже не покажет подсказку в выпадающем списке. Объясняется это довольно просто. Эта функция изначально не является функцией Excel. Она всего лишь поддерживается Excel для совместимости с другими системами электронных таблиц. В Excel эта функция попала из электронных таблиц Lotus 1-2-3. Подробнее см. здесь.

· Функция Excel ТЕКСТ переименована в FORMAT.

· Функция СУММЕСЛИМН заменена усовершенствованной функцией CALCULATE.

· Вместо функции ВПР применяется более простая функция RELATED.

· В DAX появилась функция BLANK(). Поскольку некоторые из агрегирующих функций могут основывать вычисления на параметрах ALLN0NBLANKR0W либо FIRSTNONBLANK, функция BLANK() может применяться в качестве аргумента функции IF() для исключения некоторых строк при вычислениях мер.

· Функция ВЫБОР переименована в SWITCH. В то время как в качестве аргументов функции ВЫБОР используются числовые значения от 1 до 255, функцию SWITCH можно запрограммировать для работы с другими значениями.

Использование функции RELATED, чтобы вычисления в столбцах основывались на значениях другой таблицы.В ходе вычислений в таблице PowerPivot может понадобиться ссылаться на значения, находящиеся в других ячейках PowerPivot. В стандартной версии Excel в подобных случаях применяется функция ВПР. В PowerPivot используется функция RELATED.

В рассматриваемом примере используется таблица BigData, включающая поле Код [магазина] и Доход (сумма продаж за день). В отчетах о продажах часто используется такой показатель, как величина продаж на квадратный метр площади. В связанной таблице Магазины находятся поля Код магазина и Торговая площадь. В наборе этих полей находятся все данные, требуемые для выполнения вычислений.

Чтобы начать создание новой формулы, перейдите в таблицу PowerPivot и щелкните в пустой ячейке колонки Добавление столбца. Введите знак равенства и щелкните в ячейке, находящейся в столбце Доход. Начните вводить формулу в PowerPivot: = [Доход]. Введите знак косой черты, обозначающий деление. Теперь нужно получить доступ к полю Торговая площадь, находящемуся в таблице Магазины. Начните ввод функции RELATED(. Укажите несколько первых букв названия таблицы – Ма. Отобразится список полей в таблице Магазины (рис. 24). Дважды кликните в поле Торговая площадь. Завершите создание формулы вводом закрывающей круглой скобки и нажатием клавиши Enter. Щелкните правой кнопкой мыши на столбце и в контекстном меню выберите параметр Переименовать столбец. Присвойте новое имя, например, ПродажиНаКвМ.

Использование надстройки PowerPivot в Excel 2013 Pro Plus - student2.ru

Рис. 24. Создание вычисляемого столбца сводной таблицы PowerPivot с помощью функций DAX

Используя вычисляемые столбцы и связи, можно создать ряд интересных сводных таблиц. Вычисляемые столбцы просчитываются для каждой строки базовых данных. В результате формула Продажи на квадратный метр торговой площади выполняется 1,8 млн. раз в таблице PowerPivot. С помощью формул DAX можно создать новое вычисляемое поле, которое просчитывается один раз для каждой ячейки в финальной сводной таблице.

Создание вычисляемого поля в сводной таблице с помощью формул DAX.Вычисляемые поля DAX обладают рядом преимуществ по сравнению с обычными вычисляемыми полями. Одно из преимуществ заключается в том, что при использовании подобного поля вычисления выполняются один раз в каждой ячейке результирующей сводной таблицы. На рис. 25 показана сводная таблица, в ячейках В5:С12 которой находятся числовые значения. Созданное вычисляемое поле DAX будет вычисляться лишь для 16 числовых ячеек сводной таблицы. Это намного быстрее, чем вычисление значений, находящихся в 1,8 млн. ячеек, с последующим суммированием. Из-за американского формата дат в исходном файле BigData.txt ряд дат в модели PowerPivot отображается некорректно, что приводит к полю (пусто) в срезе дат. Прежде чем приступить к созданию первого вычисляемого поля, следует получить представление о фильтрах.

Использование надстройки PowerPivot в Excel 2013 Pro Plus - student2.ru

Рис. 25. Сводная таблица на основе модели PowerPivot

Применение заранее созданных фильтров в вычисляемых полях DAX.В вычисляемых полях DAX автоматически применяются фильтры, предварительно заданные в соответствующих ячейках. Сначала применяются все фильтры, а затем выполняются вычисления в полях DAX. Рассмотрим ячейку В6, представленную на рис. 25. Попробуем ответить на вопрос о том, сколько фильтров задано в ячейке В6. Вы скажете, что определено два фильтра. Я же думаю, что в этой ячейке определено четыре фильтра.

Наравне с обычными автофильтрами данные в ячейках могут фильтроваться с помощью срезов. После создания первого среза отображаются записи, находящиеся в ячейке В6, которые соответствуют 2006 году. Можно также просмотреть данные о продажах в магазинах Bellevue Square Managers, добавив второй срез. Эти два среза и формируют первые два фильтра. Также в качестве фильтра выступает заголовок строки Eyewear. Это будет третий фильтр. И наконец, четвертым фильтром выступает штат Вашингтон. В вычисляемых полях DAX сначала применяются ранее созданные фильтры, а затем вычисляется результат применения формулы DAX.

Создание вычисляемого поля ОАХ.Для создания вычисляемого поля перейдите на ленту Excel, выберите вкладку PowerPivot и выполните команду Вычисляемые поля g Создание вычисляемого поля. На экране появится диалоговое окно Вычисляемое поле. В поле Имя таблицы укажите название таблицы. Присвойте вычисляемому полю имя, например, КоличествоМагазинов. На панели ввода формул введите формулу. Для вставки названий функций щелкните на значке fх. В процессе ввода названий полей начните вводить несколько символов имени таблицы, а затем с помощью функции автозавершения выберите нужное поле.

После завершения ввода формулы щелкните на кнопке Проверить формулу, чтобы протестировать синтаксис формулы. Обратите внимание на подсказку формулы, которая отображается над панелью, показывающей результаты проверки формулы. Щелкните в поле Описание, чтобы скрыть подсказку. На экране появятся результаты проверки формулы. Если проверка формулы завершилась успешно, отобразится сообщение Формула не содержит ошибок (рис. 26). Щелкните ОК, чтобы добавить вычисляемое поле в список полей сводной таблицы. В таблице Магазины модели PowerPivot новое поле не появилось, а вот в сводной таблице оно есть (рис. 27). Совсем, как в обычной сводной таблице!

Использование надстройки PowerPivot в Excel 2013 Pro Plus - student2.ru

Рис. 26. Создание нового вычисляемого поля

Использование надстройки PowerPivot в Excel 2013 Pro Plus - student2.ru

Рис. 27. Новое вычисляемое поле в сводной таблице

Однажды созданное вычисляемое поле можно использовать для выполнения вычислений в будущем. Вычисляемое поле ПродажиМагазина (рис. 28) использует следующую формулу:

=SUMX(BigData;BigData[Доход])/[КоличествоМагазинов]

Использование надстройки PowerPivot в Excel 2013 Pro Plus - student2.ru

Рис. 28. Поле ПродажиМагазина вычисляется на основе ранее созданного поля КоличествоМагазинов

Чтобы упростить структуру сводной таблицы, можно не отображать поля Сумма по столбцу Доход и КоличествоМагазинов, оставив поле ПродажиМагазина.

Как отменить стандартную фильтрацию.А теперь рассмотрим следующую проблему. На рис. 29 выделена ячейка С5. В результате применения фильтров к этой ячейке отображаются записи, соответствующие торговцу по имени Амбер и дате продажи 01.06.2014. В этом и следующих разделах (вплоть до Практикума) используется Excel-файл Пример фильтра.xlsx

Использование надстройки PowerPivot в Excel 2013 Pro Plus - student2.ru

Рис. 29. К ячейке С5 неявно применены фильтры по дате и торговцу

Как уже упоминалось ранее, все фильтры, заданные к ячейке сводной таблицы, автоматически применяются к вычисляемому полю DAX. Во многих случаях это неприемлемо. В ячейке G6 отображается сумма проданных товаров, равная 165 долларам, которая не связана с каким-либо продавцом. Применяемая в данном случае политика заключается в том, чтобы сумма, равная 165 долларам, была назначена другим людям на основе их доли (в процентах) от суммы проданных товаров в этот же день, причем продавец Хьюз не участвует в продажах. Можно ли реализовать эту политику в данной сводной таблице?

Обратите внимание на то, что вычисления, выполняемые в ячейке С5, неявно фильтруются таким образом, чтобы отображать только продажи Амбера. Нужно создать формулу DAX, которая будет отменять фильтрацию данных. Эта формула будет отменять фильтр, отображающий соответствующие Амберу записи, и отображать записи, которые не связаны с Амбером. Функция DAX CALCULATE может удалять установленные фильтры и применять другие фильтры. Эта функция напоминает функцию СУММЕСЛИМН, но предоставляет пользователям больше возможностей.

Функция CALCULATE применяется для вычисления столбца итогов с учетом одного либо нескольких фильтров. Если для поля Продавец задать фильтр, он заменит фильтр, ранее заданный для этого поля. Если создать фильтр Продавец=Хьюз, DAX автоматически проигнорирует неявный фильтр Продавец=Амбер, что приведет к отображению всех записей, соответствующих Хьюзу. Если вам сложно с ходу научиться создавать формулы DAX, попробуйте поэтапную методику. Вместо многоэтажных формул сформируйте набор, состоящий из небольших формул. Формула, вычисляющая объем продаж Хьюза (рис. 30):

=CALCULATE([Сумма по столбцу Продажи];Sls[Продавец]="Хьюз")

После задания вычисляемого поля можно использовать его в других вычисляемых полях.

Использование надстройки PowerPivot в Excel 2013 Pro Plus - student2.ru

Рис. 30. Формула DAX удаляет фильтр по полю Продавец и применяет другой фильтр

Задайте следующие вычисляемые поля:

Вычисляемое поле Формула
Хьюз (рис. 30) =CALCULATE([Сумма по столбцу Продажи];Sls[Продавец]="Хьюз")
НеХьюз =CALCULATE([Сумма по столбцу Продажи];Sls[Продавец]<>"Хьюз")
ДоляНеХьюз =[Сумма по столбцу Продажи]/[НеХьюз]
ХьюзРаспрДрПрод =[Хьюз]*[ДоляНеХьюз]
КоррПрод =[ХьюзРаспрДрПрод]+[Сумма по столбцу Продажи]

Теперь пришла очередь применить фильтр к столбцу Продавец, чтобы скрыть долю Хьюза из сводной таблицы. В результате получим сумму продаж 911 долларов за 2 июня (значение в ячейке Н6, рис. 31), при том что доля Хьюза распределена между другими продавцами. Сравните значения по каждому отдельному продавцу и итоги по дням в таблицах на рис. 30 и 31. Подобного результата невозможно добиться с помощью вычисляемых полей, создаваемых в обычной сводной таблице.

Использование надстройки PowerPivot в Excel 2013 Pro Plus - student2.ru

Рис. 31. Продажи Хьюза распределены между другими продавцами

Наши рекомендации