Скачать [Академия Excel] Продвинутый Power Query. Тариф Продвинутый [Михаил Музыкин]

Информация
Цена: 331 РУБ
Организатор: Kail Kail
Ссылки для скачивания
Kail
Kail
Организатор
Организатор
Регистрация
09.04.2020
Сообщения
392 204
Реакции
38 190
Монеты
1 191
Оплачено
0
Баллы
0
  • #SkladchinaVip
  • #1
[Академия Excel] Продвинутый Power Query. Тариф Продвинутый [Михаил Музыкин]
Ссылка на картинку
Научим понимать код на языке М и писать его с нуля
Научитесь решать задачи, которые нельзя решить через интерфейс
Ваши запросы станут более гибкими, универсальными и будут обрабатываться в 3-10 раз быстрее

ПОДРОБНАЯ ПРОГРАММА КУРСА

Программа занятий

Постарались описать простыми словами содержимое каждой темы

1. Как вообще писать код на М

Разбираем самые основы - значения, литералы значений, выражение, операторы, среда, переменная, функция, тип и всякие другие страшные слова.
Учимся писать простые выражения, выясняем, что параметры можно задавать просто кодом.
Учимся использовать функции типа #date или DateTime.LocalNow() для создания констант.
Далее рассматриваем операторы (арифметика, логика, условные) и начинаем писать собственные функции.
Разбираем абстрактные типы –table, function – и заодно выясняем, зачем нам столько разных скобок.
После чего выясняем, что «запрос с шагами» - это просто одна большая формула. По этому поводу разбираем как устроена конструкция let in, выясняем, что такое «синтаксис на записях» и область видимости переменных.

По итогу первого занятия у вас появится понимание того, как вообще устроен код на М, как его читать и где править.

2. Что это за списки, на которых быстрее?

В рамках вебинара рассматриваем тип данных список (list).

Выясняем, что списки у нас везде – список имён столбцов таблицы, список значений конкретного столбца, список искомых значений и т.п. и учимся с ними работать:
- получаем списки
- генерируем списки (чисел, дат, символов, отдельно посмотрим на List.Generate)
- учимся собирать один список из нескольких (Combine, Union, Difference)
- учимся выбирать нужное – первые/последние элементы, каждый третий, выбор по условию и т.д.

Далее поработаем с List.Transform – главная функция вообще и в частности – соорудим календарь, получим таблицы книги по списку, вытащим конкретные элементы из списка по списку и вообще запомним, что при работе с таблицами без этой функции никуда.

Ещё мы не обойдём внимание List.Accumulate и осуществим множественную замену текста, а закончим превращением списка в таблицу.

Главная задача занятия – научить видеть списки в своих задачах и показать, как с ними работать не просто с использованием штатных функций, а именно с написанием пользовательских функций (x)=> в нужных местах.

3. Таблицы вдоль и поперек – и это не фигура речи, а разное представление (основная тема - table)

На данном вебинаре смотрим на таблицу и выясняем, что это с точки зрения языка М (список записей, список строк, список столбцов, нужное подчеркнуть или все варианты верные).

Собираем одну таблицу из нескольких, боремся с разными шапками и радуемся, что мы уже разобрались со списками.

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

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

А на закуску нам останется Table.Group, про которую мы выясним, что это функция пяти аргументов, напишем список агрегаций без привязки к конкретным столбцам, выясним, что такое GroupKind и когда он нам нужен Local и конечно, научимся писать пятый аргумент в виде своей пользовательской функции (сгруппируем таблицу с пропусками, сгруппируем по определённым признакам, условиям и т.д.).

Научитесь применять «списочные» подходы к реальным таблицам. Увидите на примерах что таблица - это не жёсткая структура и что при работе с ней можно (и нужно) писать гибкий код.

4. Записи или как перестать бояться квадратных скобок в коде (основная тема – record)

В рамках вебинара рассматриваем запись как тип данных, ещё раз вспомним, что она - среда выполнения – и напишем пользовательскую функцию в виде записи.

Далее рассмотрим запись как строку таблицы и займемся функциями, где это важно (Table.SelectRows, Table.AddColumn): научимся работать с множеством условий, напишем функции для добавления столбца (в том числе без привязки к именам) и т.п.

Снова вернёмся к List.Generate, но уже в полном синтаксисе, на записях, и решим задачу вычисления накопленной суммы (а заодно и скользящего среднего).

Наконец, выясним, что такое «словарь на записях» и чем он нам поможет при множественных заменах, создании агрегаций вроде СЧЁТЕСЛИ, СУММЕСЛИ. Применим его при сложных группировках (например, группировка по списку категорий, которые находятся в одном столбце с наименованием товара).

У вас сформируется понимание, что квадратные скобки – это не только для названий столбцов, а вполне конкретная структура (локальное пространство имён), применимая в очень разных задачах.

5. Работа с файлами и папками – просто кодом, просто в запросе, просто так можно (основная тема Excel.* + Folder.*)

В рамках данного вебинара от отдельных таблиц мы перейдём к файлам в целом.
Здесь поработаем с файлом “изнутри” с использованием Excel.CurrentWorkbook, соберём все таблицы.

Далее поработаем с ним же «снаружи», вооружившись Excel.Workbook, выясним насколько это интереснее и полезнее – соберём информацию со всех листов и узнаем, зачем нужны дополнительные аргументы.

Ну и разобравшись с начинкой отдельно файла перейдём к чтению папок целиком:
- выясним разницу между Folder.Files и Folder.Contents
- напишем общий шаблон подключения к папке
- поработаем с файлами xlsx – соберем одно- и многолистовые файлы, с привязкой к именам листов и без
- модифицируем шаблон и вытащим csv, txt, pdf – выясним, что шаблон остаётся тем же
- и далее займёмся написанием пользовательских функций – соберем данные из смеси xlsx и txt, применим разные преобразования в зависимости от содержимого файла, посмотрим на общую логику кода – как его писать «на лету».

По итогам занятия у вас сложится общее понимание о комплексном сборе и преобразовании данных, все ранее пройденные темы сложатся в единую систему и, надеемся, появится желание продолжать писать код, расширять и углублять свои познания, но уже с уверенностью и пониманием происходящего.
Показать больше
 
Зарегистрируйтесь , чтобы посмотреть скрытый контент.
Поиск по тегу:
Теги
power query powerquery академия excel михаил музыкин продвинутый power query
Похожие складчины
Kail
Ответы
0
Просмотры
2K
Kail
Kail
Kail
Ответы
0
Просмотры
400
Kail
Kail
Kail
Ответы
0
Просмотры
27
Kail
Kail
Kail
Ответы
0
Просмотры
905
Kail
Kail
Kail
Ответы
0
Просмотры
198
Kail
Kail
Показать больше складчин

Войдите или зарегистрируйтесь

Вы должны быть авторизованны для просмотра материала

Создать аккаунт

Создать учетную запись займет не больше минуты!

Войти

Уже зарегистрированы? Просто войдите.