Файлы к уроку: Файлы доступны только спонсорам канала. Оформите спонсорскую подписку, если хотите получить максимум от обучения. Стать спонсором канала: https://www.youtube.com/channel/UCwAru3vDmH-IdYtwK7JWN4w/join
В этом уроке мы в Power Query воспроизведем функцию Switch из стандартного Excel и Power Pivot.
В наших данных есть столбец с датой, по состоянию на которую в отчете содержатся данные. При этом отчет выходит всегда в пятницу. Нам надо добавить еще 1 столбец с датой ближайшей пятницы.
Получается, что в новом столбце должна выполняться следующая логика: если дата, которая нам дана приходится на понедельник, то прибавить 4 дня, чтобы получить ближайшую пятницу, если на вторник, то 3 и т. д.
Вспомним как создать пользовательскую функцию:
- Создать запрос для одного единственного случая
- Заменить хардкод на название параметра
Наша пользовательская функция будет содержать 3 шага:
- Создать список списков пар соответствий
- Выбор одного дня
- Из списка дня выбрать только нужное значение
Код будет выглядеть так:
(day)=>
let
Источник = {
{"понедельник", 4},
{"вторник", 3},
{"среда", 2},
{"четверг", 1},
{"пятница", 0}
},
День = List.Select(Источник, each _{0} = day),
Значение = List.First(День){1}
in
Значение