Хитрости »
Основные понятия (23)
Сводные таблицы и анализ данных (9)
Графики и диаграммы (5)
Работа с VB проектом (12)
Power BI и Power Query (14)
Условное форматирование (5)
Списки и диапазоны (5)
Макросы(VBA процедуры) (63)
Разное (38)
Баги и глюки Excel (2)

Модель создания план-фактного анализа предприятия при помощи Power BI. Часть 1

Т.к. статья получилась и без того довольно объемной, то пришлось разбить её на две части: в первой я расскажу как подготовить и загрузить данные в Power BI, а во второй - как в Power BI создавать визуальные элементы

Предположим у нас есть файл с таблицей для планирования бюджета на будущий год, в котором для каждой статьи на каждый месяц указывается планируемая сумма дохода или расхода по этой статье:
Пример таблицы планирования бюджета
При этом доходы записываются положительным числом, а расходы – отрицательным.
Точно такой же файл, но без цифр отсылается по отделам/подразделениям для заполнения фактических цифр по прошествии отчетного периода. Отделы забивают цифры помесячно для тех статей бюджета, за которые они отвечают, после чего высылают ответственном. Теперь нам необходимо все файлы с фактическими показателями(будем называть их Факт) от отделов сравнить с запланированными данными. Т.к. в большинстве случаев делается это для руководства или иных заинтересованных лиц (которым куда удобнее и практичнее оценивать ситуацию не сухими цифрами) все это необходимо предоставить так же в виде графиков/диаграмм.
Делать каждый раз вручную вариант не самый лучший. Особенно если вспомнить, что данные по факту нам поступают ежемесячно и мы должны будем операцию по сравнению плана и факта производить так же ежемесячно. Плюс придется это делать с файлом от каждого подразделения и если их больше 5, то…Занятие хоть и нужное, но не самое увлекательное.
Если делать это в Excel, то все сводится либо к написанию кодов на VBA, либо к написанию формул в виде ссылок на файл каждого отдела, что может не всегда сработать в виде готовой и практичной модели, если отделов много. Еще есть вариант применить встроенный инструмент Консолидация и потом сравнивать. Но это опять же – ежемесячная радость на голову. И надо учесть и еще один момент – такие таблицы для построения графиков не лучший вариант. Я бы даже сказал вообще неудачный. Их надо будет как-то преобразовывать и сводить план с фактом. В общем кто уже занимался подобной работой поймет меня как никто другой. Поэтому мы пойдем другим путем и для выполнения задачи будем использовать новое бесплатное решение от Microsoft – Power BI(что это такое и с чем едят можно прочитать в этой статье – Знакомство с Power BI). И причин тому несколько:

  • при помощи Power BI мы можем один раз правильно сделать все преобразования и дальше останется только жать кнопку Обновить для получения актуальных данных
  • для создания эффектных и содержательных графиков не придется прибегать к танцам с бубном
  • созданные графики и отчеты можно без проблем опубликовать и при обновлении актуальная информация будет доступна всем заинтересованных из смартфона, планшета и просто через интернет

Как это может выглядеть:

Это созданная в Power BI и уже готовая модель план-фактного анализа. Вы можете скачать все тестовые файлы для этой модели и саму готовую модель:

  Готовая модель План-фактного анализа в Power BI (564,6 KiB, 676 скачиваний)


Чтобы поиграть с обновлениями необходимо будет настроить подключение, т.к. данные в приложенной модели локальные. Для этого надо перейти в меню -Параметры и настройки -Настройки источника данных
Изменить путь к источнику данных


Прежде чем перейти непосредственно к разбору решения, уделим еще чуточку времени небольшим деталям. Например, у нас есть еще пара вспомогательных таблиц, расположенных в отдельных файлах:

  • таблица с наименованием статей, в которой указано какой отдел за какую статью отвечает
    Таблица статей
  • Таблица с отделами(название, адрес, фио руководителя, контакты и т.п.):
    Таблица отделов

Для того, чтобы нам постоянно не думать какие таблицы где расположены, таблицы с фактическими показателями мы будем помещать в папку "Факт", таблицы Статей и Отделов – в папку "Вспомогательные таблицы", а файл с планом оставим просто в той же папке, где все остальные:
Структура папок и файлов
Файлы с фактическими показателями в имени содержат название отдела: "2015 - Бухгалтерия.xlsx", "2015 - Коммерческий.xlsx" и т.д. Так мы сможем определить в каком файле чьи показатели.
Теперь приступаем к созданию нашей модели в Power BI
Состоять весь процесс будет из четырех основных этапов:

  1. Подготовка данных для загрузки в Power BI
  2. Загрузка и преобразование данных для создания графиков
  3. Настройка связей между таблицами
  4. Создание графиков (перенесено в Часть 2)


ПОДГОТОВКА ДАННЫХ ДЛЯ ЗАГРУЗКИ В POWER BI
Сначала таблицы в файлах плана и фактов преобразуем в умные:

  • выделяем таблицу с бюджетом
  • вкладка Вставка(Insert) и выбрать Таблица(Table)
    Вставка таблицы

Так же это необходимо будет сделать для всех файлов с фактом, а так же для файлов Статьи и Подразделения. Будет лучше, если во всех файлах Факта таблицы будут называться одинаково. Еще лучше, если таблицы будут преобразованы в умные ДО того, как они будут высланы подразделениям для заполнения фактических показателей. Это избавит от дополнительного ручного труда по преобразованию таблиц в каждом файле Факта в умные.
Приложенные к статье файлы уже подготовлены и можно посмотреть как это должно выглядеть.



ЗАГРУЗКА И ПРЕОБРАЗОВАНИЕ ДАННЫХ ДЛЯ СОЗДАНИЯ ГРАФИКОВ

Загрузка и подготовка файла Плана
Запускаем Power BI(предполагается, что он уже установлен. Если нет – читаем статью Знакомство с Power BI)
Вкладка ГлавнаяПолучить данные -Excel -Подключить
Подключить файл Excel
Выбираем файл Плана(План доходов и расходов 2015 год.xlsx) -в окне раскрываем папку с именем файла(если не раскрыта автоматически) и выделяем Таблица1(имя умной таблице в файле Плана). В окне справа отображается предпросмотр выбранного объекта, что позволяет убедиться, что объект выбран правильно. Ставим галку для выбранной таблицы и жмем кнопку Правка
Загрузка в редактор запросов
Если вдруг вместо Правка нажали Загрузить – ничего страшного. В окне Power BI идем на вкладку Главная -Изменить запросы. Попадем в тоже окно, что и после нажатия на Правка.
Применяем фильтр по наименованию статьи и убираем null и 1(нумерация столбцов под заголовком)
Не стоит переживать – фильтр в Power BI отличается от фильтра в Excel. Отфильтрованные данные уже не принимают дальнейшего участия в формировании данных
Выделяем два первых столбца(№ статьи и НАИМЕНОВАНИЕ СТАТЬИ) -вкладка Преобразование -Отменить свертывание других столбцов
Отменить свертывание столбцов
Данная операция создаст два столбца – один с названием месяца, второй – с суммами плана:
Свернутые столбцы
Разделяем столбец месяцев(Атрибут) по пробелу: выделяем столбец Атрибут -правая кнопка мыши -Разделить столбец -По разделителю. Разделитель – пробел. В результате получим 3 новых столбца.
Переименовываем нужные столбцы: Атрибут.2 = Месяц, Атрибут.3 = Год, Значение = План
Переименованные столбцы
Теперь нам необходимо из месяцев сделать нормальную дату – иначе стоить диаграммы с нормальной группировкой по кварталам, годам и месяцам не сможем. Для этого нам надо название месяца заменить его номером: Январь = 1, Февраль = 2 и т.д. Чтобы не делать это через Преобразование -Замена значений для каждого месяца, создаем вспомогательную таблицу месяцев:

  1. Правая кнопка мыши по столбцу с именами месяцев -Добавить как новый запрос. Будет создана новая "таблица" на основании этого столбца
  2. В появившемся запросе(таблице месяцев) необходимо удалить дубли, чтобы осталось только 12 месяцев: правая кнопка мыши на столбце -Удалить повторения
    Удаление повторений
  3. Преобразуем созданный запрос в нормальную таблицу: правая кнопка мыши по столбцу -в таблицу
  4. переименовываем единственный столбец в Месяц
  5. переходим на вкладку Добавить столбец -Добавить столбец индекса -от 1. Это и есть наши номер столбцов, которые нам необходимо подставить в таблицу План

Чтобы подставить номер месяца к имени в Excel мы могли бы использовать ВПР. В Power BI(и Power Query) большую часть функционала ВПР заменяет инструмент слияние(для тех, кто знаком хотя бы мельком с SQL, это по сути JOIN).Переходим в таблицу План, идем на вкладку Главная -Комбинировать -Слияние запросов:
Слияние запросов
В появившемся окне в верхней части в таблице выделяем столбец Месяц, в выпадающем списке чуть ниже выбираем таблицу Месяц. В нижней части отобразятся данные этой таблицы(это та таблица месяцев, которую мы создали). Выбираем там так же столбец Месяц, проверяем, чтобы было выбрано "Внешнее соединение слева(все из первой таблицы, совпадающие из второй)". Жмем Ок:
Параметры слияния
В нашей таблице Плана появится новый столбец(NewColumn) со значением Table во всех строках. В правой части заголовка этого столбца будет значок в виде двух загнутых стрелок, смотрящих в разные стороны. Нажимаем на него и раскроется список всех столбцов таблицы Месяц. Оставляем галочку только на Индекс и жмем Ок:
Раскрытие столбцов
Сверяем типы данных в столбцах (т.к. Power BI может назначить например Дате общий тип и мы не сможем оперировать данными как датой). Для этого выделяем столбец -переходим на вкладку Преобразование -пункт Тип данных. Для столбца Год должен быть Целое число, для Месяца – тоже Целое число, для столбца План – Десятичное число, № статьи – целое число. Чтобы изменить тип данных достаточно просто выделить нужный столбец, на вкладке Преобразование в пункте Тип данных выбрать нужный тип.
Теперь пришло время чуть-чуть воспользоваться возможностями встроенного языка M, т.к. нам надо как-то создать дату из номера месяца и года. Переходим на вкладку Добавить столбец -Добавить пользовательский столбец. Имя нового столбца – Дата, Пользовательская формула столбца:
Date.EndOfMonth(#date([Год],[NewColumn.Индекс],1))
Добавление столбца даты

Формула получает дату на конец месяца на основании переданной даты. В данном случае мы при помощи функции date формируем сначала дату вида: Год-Месяц-число 1(01.01.2016 и т.д.). А EndOfMonth уже из этой даты делает 31.01.2016
Проверяем, чтобы тип данных в нашем созданном столбец был Дата(вкладка Преобразование -Тип данных).
Осталось привести все суммы к положительным числам, т.к. мы помним о том, что суммы расходов у нас записываются со знаком минус. Это обязательно негативно скажется на визуальном сравнении показателей. Щелкаем правой кнопкой мыши на столбце План -Преобразование -Абсолютное значение.

Маленький штришок: в левой части окна запросов у нас перечислены запросы по именам. По умолчанию запрос называется так же, как лист или таблица. В нашем случае это Таблица1. Сейчас неплохо бы переименовать её в План, чтобы не путаться. Выделяем в левой части запрос Таблица1 и в правой части находим область Свойства. Там и меняем Имя с Таблица1 на План
Переименование запроса на План

Все, главные манипуляции с данными плана проделаны, осталось подгрузить вспомогательные таблицы Статей и Подразделений. Их мы получаем из файлов Excel, поэтому технология создания запроса одинакова: Вкладка ГлавнаяСоздать источник -Excel -Выбираем нужный файл -Открыть. В появившемся окне выбираем нужную таблицу и ставим напротив неё галку -Ок.

  • Подразделения:
      Просто переименовываем запрос с таблицы в Отделы(правая часть окна -Свойства)
  • Статьи:
    Для файла статьи нам надо проделать еще одну маленькую операцию:

    • Проверяем, что бы тип для № статьи был Целое число(вкладка Преобразование -Тип данных)
    • Многие наверное давно заметили, что у нас нет признака доходные статьи или расходные(этот момент у меня специально оставлен без внимания в файле Excel, чтобы показать как это можно решить в Power BI). Т.к. признака доходов и расходов нет - нам надо его добавить: вкладка Добавить столбец -Добавить пользовательский столбец. Имя нового столбца – Доходы/Расходы, Пользовательская формула столбца:
      if (Text.Contains(Text.Lower([НАИМЕНОВАНИЕ СТАТЬИ]), "прибыль") or Text.Contains(Text.Lower([НАИМЕНОВАНИЕ СТАТЬИ]), "доход") or Text.Contains(Text.Lower([НАИМЕНОВАНИЕ СТАТЬИ]), "получен") or Text.Contains(Text.Lower([НАИМЕНОВАНИЕ СТАТЬИ]), "выручка") or Text.Contains(Text.Lower([НАИМЕНОВАНИЕ СТАТЬИ]), "поступления")) then "Доходы" else "Расходы"
      формула довольно простая: она берет каждую строку таблицы статей и просматривает текст в столбце НАИМЕНОВАНИЕ СТАТЬИ. Если там есть либо слово "прибыль", либо "доход", либо "получен", либо "выручка", либо "поступления" - то считаем это Доходами и в новый столбец пишем Доходы. Все остальное - Расходы, и в новый столбец пишем Расходы. Формула подойдет для моих файлов-примеров, но может не подойти для других файлов. Это стоит иметь ввиду
    • Переименовываем таблицу в Статьи(правая часть окна -Свойства)
  • И еще нам осталось создать дополнительную таблицу с датами – чтобы как-то увязать даты в файле Плана с датами Факта в визуальных элементах(об этом в Части 2 статьи):
    • Переходим в таблицу План -Правая кнопка мыши по столбцу Дата -Добавить как новый запрос
    • В новом запросе выделяем столбец -Правая кнопка мыши -Удалить повторения)
    • Правая кнопка мыши по столбцу -в таблицу
    • переименовываем столбец в Дата и проверяем, чтобы тип данных был Дата

Теперь добавляем из созданных таблиц необходимые данные из созданных таблиц. Нам необходимо объединить с таблицей Статьи, чтобы в План затянуть данные о том, какой отдел за какую статью отвечает, а так же тип – Расходы или Доходы. Для этого опять же будем использовать инструмент Слияние.
Переходим в таблицу План, вкладка Главная -Комбинировать -Слияние запросов. По Наименованию статьи объединяем с таблицей Статьи(точно так же, как и в случае с таблицей Месяцы):
Слияние
В нашей таблице Плана появится новый столбец(NewColumn) со значением Table во всех строках. В правой части заголовка этого столбца будет значок в виде двух загнутых стрелок, смотрящих в разные стороны. Нажимаем на него и раскроется список всех столбцов таблицы Статьи. Оставляем галочку только на Отдел и Доходы/Расходы, снимаем галку с "Использовать исходное имя столбца как префикс", жмем Ок.
Развернутые столбцы
Применяем фильтр по столбцу Доходы/Расходы, убирая null. Этим самым мы оставим только те строки, которые, содержат исключительно статьи нижней иерархии, что позволит избежать задвоения показателей за счет итоговых строк. В случае со структурой моих файлов это важно.
Все, таблица Плана полностью готова к работе. Теперь, если даже в эту таблицу будут внесены корректировки – они так же отразятся в таблице Power BI после нажатия кнопки Обновить на вкладке Главная.



Загрузка и подготовка файлов Факта(Создать источник -Дополнительные сведения -Папка)
Если в случае с Планом нам достаточно было один раз настроить все преобразования для одного файла, то здесь такой фокус не прокатит – ведь файлов с фактическими показателями у нас может быть сколько угодно и при этом нам необходимо учитывать, что файлы при этом будут добавляться в папку или удаляться из неё при необходимости. И если обрабатывать каждый как файл План, то сложно это будет назвать более простым решением. Однако в Power BI есть возможность получать данные из множества файлов - надо лишь указать папку с файлами и настроить запрос на получение только нужных данных. Многие операции по преобразованию данных очень похожи на то, что мы уже проделали с файлом Плана(структура файлов как мы помним одинаковая), но определенные отличия есть и большая их часть касается именно подгрузки самих файлов. Чтобы начать получение данных всех файлов папки Факт переходим на вкладку Главная -Создать источник -Дополнительные сведения -Все -Папка. Подключить. В появившемся окне жмем на кнопку Обзор и выбираем папку Факт(папка, в которую мы будем помещать все заполненные файлы, полученные от подразделений) -жмем Ок. В появившемся окне просто нажимаем Ок для загрузки данных. Теперь перед нами список файлов в папке. Последние 5 столбцов("Date accessed", "Date modified", "Date created", "Attributes", "Folder Path") в нашем случае не нужны и мы их смело удаляем:
Удаляемые столбцы
Хотя, если не удалять эти столбцы – ошибки тоже не будет. Я их удаляю просто, чтобы не мешались.
Однако, чтобы избежать ошибок в дальнейшем необходимо сделать так, чтобы в обработку попадали только файлы Excel. Для этого можно использовать фильтрацию по столбцу Extension: нажимаем на кнопку, чтобы раскрылся фильтр -Текстовые фильтры -Начинается с
Текстовый фильтр
Указываем там ".xls"(без кавычек)
Отбираем файлы .xls
Почему .xls, а не конкретное расширение? чтобы если вдруг в папке будут файлы Excel с другим расширением(.xlsx, .xlsb, .xls и т.п.) – чтобы они тоже попадали в обработку. При этом файлы других типов(текстовые, Word, .CSV и т.д.) не допускались к обработке, т.к. это вызовет ошибку и дальнейшее выполнение преобразований не будет выполнено. А нам оно не надо.
Как мы помним, файлы Фактов у нас в имени содержат название отдела. В моем случае это "Год – название отдела.xlsx" и они отображаются у нас в запросе:
Список файлов
Теперь нам надо получить только название отдела, от которого получены данные, убрав оттуда Год и расширение. Сделать это можно разбив столбец с именем файла. Выделяем столбец Name -правая кнопка мыши -Разделить столбец -По разделителю. Разделитель – Пользовательский, в появившемся поле вбиваем " - "(пробел-тире-пробел). Будет создано два столбца – Name.1 и Name.2. Во втором уже название отдела, но пока с расширением файла(.xlsx). Выделяем столбец Name.2 -правая кнопка мыши -Разделить столбец -По разделителю. Разделитель – Пользовательский, в появившемся поле вбиваем точку, чтобы отделить от имени отдела расширение файла. Т.к. расширение файла у нас уже есть и нам нужен исключительно первый столбец – то там в же в окне параметров разбиения столбца выбираем Расширенные параметры и для "Число столбцов, на которое необходимо разделить столбец" указываем 1:
Разбиение столбца

Переименовываем столбец Name.2.1 в Отдел.
А теперь нам надо получить содержимое всех книг, которые находятся в указанной папке(Факт). Напрямую "накликать" мышкой это нельзя(по крайней мере на момент написания статьи это нельзя было сделать). Поэтому пойдем другим путем: добавляем Пользовательский столбец Fact(вкладка Добавить столбец -Добавить пользовательский столбец) с формулой:
Excel.Workbook([Content])
Получаем данные файлов факта

Данная формула извлекает содержимое книг Excel – листы, таблицы и все объекты, которые может получить Power BI(точнее - Power Query). Именно поэтому изначально мы ставили фильтр на тип файлов – т.к. данная функция(Excel.Workbook) не может получить данные из типов файлов (отличных от Excel) и обязательно выдаст ошибку, если ей подсунуть другой тип.
В нашей таблице Факт появится новый столбец(Fact) со значением Table во всех строках. В правой части заголовка этого столбца будет значок в виде двух загнутых стрелок, смотрящих в разные стороны. Мы уже знаем, что надо делать: нажимаем на этот значок и раскроется список всех столбцов для файлов:
Разворачиваем Факт

В столбце Kind у нас есть несколько типов данных: Table и Sheet. При этом Table содержит только свои данные, а Sheet - это весь лист и содержит всю информацию с листа, включая так же уже упомянутые таблицы. Т.к. мы специально готовили файлы таким образом, чтобы там были умные таблицы и данные нам нужны только из этих таблиц – то нам надо оставить загрузку в Power BI только таблиц. Для этого фильтруем данные в столбце Fact.Kind и оставляем только Table, чтобы в обработку попадали только Таблицы:
Отбираем таблицы
если надо получить только данные с определенных таблицы - имеет смысл в исходных файлах давать конкретные имена таблицам и фильтровать уже по полю Fact.Name
Теперь выделяем столбец "Fact.Data" -правая кнопка мыши -Переместить -В конец. При помощи значка в виде двух загнутых стрелок в столбце Fact.Data получаем все данные из всех таблиц файлов в папке Факт, при этом снимаем галку с пункта "Использовать исходное имя столбца как префикс":
Разворачиваем столбцы
Далее действия во многом похожи на те же действия в файле Плана:

  • Применяем фильтр по столбцу с № статьи, снимая галку с null и с 1
  • Выделяем все первые столбцы, кроме столбцов месяцев -вкладка Преобразование -Отменить свертывание других столбцов
    Почему я выделяю не столбцы месяцев и не выбираю Отменить свертывание столбцов? Потому что лучше на всякий случай предусмотреть ситуацию, если вдруг год изменится или в План и Факт будут добавлены столбцы следующих или предыдущих лет. Если выделить только столбцы месяцев, которые так же содержат год, то при изменении в таблицах номера года получим ошибку обработки данных, т.к. запросы используют статичное текстовое имя столбца и при переименовании столбцов в исходных данных они уже не будут совпадать с именами в запросе.
    У нас теперь два новых столбца: Атрибут и Значения. Выделяем столбец Атрибут -правая кнопка мыши -Разделить столбец -По разделителю -Пробел. Переименовываем столбцы: Значения в Факт, Атрибут.3 - Год
  • Проверяем типы данных: Год и № статьи должны быть целое число, Факт – десятичное число. Напомню, что типы данных мы проверяем и изменяем на вкладке Преобразование -Тип данных
  • Для столбца с суммами Факта приводим все числа к положительным: правая кнопка мыши по столбцу Факт -Преобразование -Абсолютное значение
  • Вкладка Главная -Комбинировать -Слияние запросов. По имени месяца объединяем с таблицей Месяц
  • Разворачиваем новый столбец и оставляем из него только Индекс(номер месяца)
  • Переходим на вкладку Добавить столбец -Добавить пользовательский столбец. Имя нового столбца – Дата, Пользовательская формула столбца:
    Date.EndOfMonth(#date([Год],[NewColumn.Индекс],1))
  • Для нового столбца проверяем, чтобы тип данных был Дата
  • В таблице Факт, вкладка Главная -Комбинировать -Слияние запросов. По Наименованию статьи объединяем с таблицей Статьи. Разворачиваем новый столбец и оставляем только столбец "Доходы/Расходы", сняв при этом галку с пункта "Использовать исходное имя столбца как префикс"
  • Применяем фильтр по столбцу Доходы/Расходы, убирая null

Все, на этом наши файлы с Фактом прошли преобразование. Теперь даже если мы добавим файл какого-либо еще отдела в папку Факт или наоборот удалим – после обновления данных в Power BI эти данные так же будут добавлены/удалены и обработаны. Т.е. информация о фактических показателях будет напрямую зависеть от данных в файлах Excel, помещенных в папку Факт и от количества этих файлов. А это означает, что один раз мы сейчас потратили полчаса на настройку, зато в будущем уже у нас нет необходимости это проделывать ежемесячно и с каждым файлом.
Применяем все изменения: вкладка Главная -Закрыть и применить



Настройка связей между таблицами
Теперь нам необходимо настроить связи между всеми созданными таблицами, чтобы данные взаимодействовали правильно при создании графиков. Связи нужны для того, чтобы увязать поля Плана и Факта на основании одних и тех же данных. Например, Наименование статьи есть в плане и факте, но напрямую связать их мы не можем – нужна таблица уникальных наименований этих статей. Это и есть созданная нами ранее отдельная таблица статей, которая будет посредником. И таблица Статьи будет влиять на отображение статей в визуальных элементах для таблиц План и Факт.
По умолчанию Power BI самостоятельно пытается обнаружить связи между разными таблицами и настроить их. И перейдя в карту связей можно обнаружить там уже небольшую "паутину" связей между таблицами. Но Power BI в автоматическом режиме далеко не всегда правильно выбирает столбцы для связи(ищет исключительно по названию столбца) и еще реже правильно выставляет направление. Поэтому мы переделаем все вручную: вкладка Главная -Управление связями. В появившемся окне в столбце Активные напротив некоторых связей может быть не установлена галочка. Если где-то галочки нет – значит что-то по любому не так со связями и их надо править. Поэтому поочередно выбираем каждую связь и жмем кнопку Изменить.
Проверяем, чтобы связь была настроена между нужными столбцами, с правильной кратностью и направлением. Кратность должна быть "Многие к одному (*:1)", направление – Однонаправленная. Направление обязательно должно быть Однонаправленным, иначе какая-то другая связь впоследствии может быть не активирована.
Правильные связи между таблицами таковы:

  • План и подразделения: по столбцу Отдел, Многие к одному, Однонаправленная
  • План и месяц: по столбцу Месяц, Многие к одному, Однонаправленная
  • Факт и подразделения: по столбцу Отдел, Многие к одному, Однонаправленная
  • Факт и месяц: по столбцу с наименованием Месяца, Многие к одному, Однонаправленная

Теперь так же надо обязательно добавить связь по дате между таблицами, т.к. автоматом она не создается. Выбираем Создать. В появившемся окне в выпадающем списке вверху выбираем таблицу План и выделяем там столбец Дата. В выпадающем списке ниже выбираем таблицу Дата и выделяем столбец Дата. Кратность "Многие к одному (*:1)", направление – Однонаправленная:
Создание связи
То же самое делаем с таблицей Факт.


Теперь смело можно приступать к созданию визуальных элементов. Этому будет посвящена отдельная статья, вынесенная во вторую часть, в продолжение этой.


Статья помогла? Поделись ссылкой с друзьями!
  Плейлист   Видеоуроки

Поиск по меткам

Access apple watch Multex Outlook Power Query и Power BI VBA работа в редакторе VBA управление кодами Бесплатные надстройки Дата и время Диаграммы и графики Записки Защита данных Интернет Картинки и объекты Листы и книги Макросы и VBA Надстройки Настройка Печать Поиск данных Политика Конфиденциальности Почта Программы Работа с приложениями Работа с файлами Разработка приложений Сводные таблицы Списки Тренинги и вебинары Финансовые Форматирование Формулы и функции Функции Excel Функции VBA Ячейки и диапазоны акции MulTEx анализ данных баги и глюки в Excel ссылки
Обсуждение: 6 комментариев
  1. Дмитрий, с месяцами можно потехнологичнее:
    1. "Добавить столбец" - выделить "Месяц" и "Год" - объединить столбцы через пробел.
    2. Далее "Преобразование" (на новом столбце): "Дата" - "Анализ"
    Ну и на этом же столбце - "Преобразование" - "Дата" - "Месяц" - "Месяц".
    Но для Power BI достаточно остановиться на втором шаге.

    • Максим, спасибо. Думал над подобными способами(включая DAX), но не зная точно всех особенностей локализаций будущих версий - не хотелось играть с месяцами так, чтобы подходило только под русскую локализацию Power BI. Так надежнее :)

      • Локализацию можно: после первого шага правой мышью по сведенному столбцу - "Тип изменения" - "Используя локаль"
        выбираем локализацию, получаем примерно такую строку:

        = Table.TransformColumnTypes(#"Inserted Merged Column", {{"Сведено", type date}}, "ru-RU")

        Кстати, она будет отличаться от той, которая в предыдущем варианте, хотя суть та же.

  2. Дмитрий, прекрасная статья, спасибо! Но, когда же будет выпущена 2 часть - продолжение? Жду с нетерпением, т.к именно Ваши объяснения предельно понятны и после них не остается вопросов.

  3. Ирина Романова:

    Отличная статья. Очень жду 2 часть

Поделитесь своим мнением

Комментарии, не имеющие отношения к комментируемой статье, могут быть удалены без уведомления и объяснения причин. Если есть вопрос по личной проблеме - добро пожаловать на Форум


Для оформления сообщений Вы можете использовать следующие тэги:
<a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <s> <strike> <strong>

Тренинги

Заказать
Юридическая информация

Использование материалов сайта

Политика Конфиденциальности

ИП Щербаков Дмитрий Валентинович
ОГРНИП: 318502700083307
ИНН: 504013350772

Наши партнеры

Перейти
Перейти

Счетчики

Рейтинг@Mail.ru Яндекс.Метрика
© 2018 Excel для всех   Войти