Power Query Продвинутый №29. Генераций таблиц с List.Generate, График платежей по кредиту

แชร์
ฝัง
  • เผยแพร่เมื่อ 16 ต.ค. 2024

ความคิดเห็น • 40

  • @comrade_excel
    @comrade_excel  4 ปีที่แล้ว

    Файлы для спонсоров Boosty: boosty.to/comrade-xl/posts/34a08df7-4971-475e-8079-e17f1b0fabb0?share=post_link
    Файлы для спонсоров ВК: vk.com/comrade.excel?w=wall-185123800_191
    Файлы для спонсоров TH-cam: th-cam.com/users/postUgwMai_IBAeNmjLLgCp4AaABCQ
    Индивидуальное обучение: comrade-xl.ru/pq-training/
    Страница урока на сайте: comrade-xl.ru/2020/05/05/power-query-listgenerate-grafik-platezhey-pq/

  • @nikbo6863
    @nikbo6863 4 ปีที่แล้ว +6

    Тимур, как обычно СУПЕР!!!
    Обращение к Вашим подписчикам! - Ребята, давайте поддержим нашего старшего товарища и я не побоюсь сказать УЧИТЕЛЯ с большой БУКВЫ. Все как обычно доходчиво и понятно. Давайте его хотя бы чуть отблагодарим за его труды. нас это не сильно огорчит (по ценам абсолютно приемлемо) а ему - надеюсь будет приятно, что мы его ценим за то что он делает большой пласт работы и объясняет нам то, что мы сами не смогли додумать и найти!!!
    Тимур и если можно один вопрос - возможно где то в уроках пропустил (хотя все переписываю в блокнот :) - как можно поставить подсказку в PQ (для отображения окончания вводимых параметров и их подсказок с параметрами их применения).
    Еще раз большое спасибо.
    Завис 5-й день на питоне :) но все видео супер, в каждом что то есть особенное, что потом все равно пригодится.

    • @comrade_excel
      @comrade_excel  4 ปีที่แล้ว

      Спасибо!
      Вы имеете в виду подсветку синтаксиса и подсказки по функциями и параметрам? Если да, то они пока есть только в Office 365.

    • @nikbo6863
      @nikbo6863 4 ปีที่แล้ว +1

      Спасибо за быстрый ответ. Да, имел ввиду подсветку синтаксиса. К сожалению, я на 2013 и 2016.
      Если будет возможность - посмотрите, пожалуйста, вопрос к видео COMRADE EXCEL TV 2. ОБЪЕДИНИТЬ XLSX ФАЙЛЫ В ОДИН CSV. Понимаю, что вопросы поднял достаточно обширные...по возможности - дайте свой комментарий (хотя бы краткий). Еще раз огромное СПАСИБО. заставляете мозтг работать (особенно когда квалификация Юриспруденция :)
      На мой взгляд Вы подняли на очень достойном и профессиональном уровне очень интересный пласт.

    • @comrade_excel
      @comrade_excel  4 ปีที่แล้ว +1

      Спасибо!
      Из ваших 3 вопросов я начну с одного, который про отслеживание прогресса. Пока что не могу точно сказать, когда будет ответ.

  • @niknik4069
    @niknik4069 4 ปีที่แล้ว +1

    Очень информативно!

  • @МихаилДжангильдин
    @МихаилДжангильдин 4 ปีที่แล้ว +1

    Лайк и спасибо.

  • @dmitriy5058
    @dmitriy5058 4 ปีที่แล้ว +1

    Спасибо автору - все как всегда на высочайшем уровне.
    Интересно было бы посмотреть на нарастающий итог с List.Genefate по 2-м и более категориям. Ибо List.Range и индексирование таблиц внутри полей ну очень тормознутые.
    Да, и ненавязчиво напоминаю про оптимизацию кода.
    Ещё раз спасибо.

    • @comrade_excel
      @comrade_excel  4 ปีที่แล้ว +8

      Спасибо!
      Про оптимизацию кода расскажу.
      Сразу вам пара советов:
      1. Если подключение к файлам, то не использовать XLXS, XLS, XLSB. Только csv и txt.
      2. В ссылках ссылаться сначала на строку, а потом на столбец, т. е. вот так, например: Таблица{строка}[столбец]. Это будет примерно раз 5-10 быстрее работать, чем ссылка такая Таблица[столбец]{строка}

    • @dmitriy5058
      @dmitriy5058 4 ปีที่แล้ว

      @@comrade_excel Спасибо. Приходится пользоваться в основном *xml, т.к. файлы выгрузки для импорта на сайт приходят именно в таком формате и других просто нет :). И с ними не всегда просто из-за специфики структуры.

    • @anmiss08
      @anmiss08 4 ปีที่แล้ว +1

      Комментарии не менее ценные!!!

  • @ivanl7786
    @ivanl7786 4 ปีที่แล้ว +2

    Здравствуйте!
    Откуда у вас такие познания “M”? Может быть вы планируете создать свой курс? Я не против пройти курс, который позволит мне писать на “M” так же легко как и на русском.

    • @comrade_excel
      @comrade_excel  4 ปีที่แล้ว +6

      Здравствуйте!
      Весь плейлист по Power Query - это и есть курс. В нем будет еще 10-15 видео. Если изучите все, то станете продвинутым пользователем Power Query.

  • @dmitriy5058
    @dmitriy5058 4 ปีที่แล้ว

    Пара вопросов.
    Как при использовании List.Generate в новом столбце в части NEXT сослаться на список из колонки таблицы внутри запроса на предыдущем шаге? Есть мысль, что нужно в записи в начале добавить еще поле с ссылкой на список, а потом в цикле переназначать это поле и использовать его как переменную с добавлением соответствующих формул в {}.
    Как включить подсветку (подсказку) набираемых функций, как в EXCEL и VBA (ну и как в видео)?
    Спасибо.

    • @comrade_excel
      @comrade_excel  4 ปีที่แล้ว +2

      Подсветки и подсказки есть только в Office 365.
      Остальное ничего не понял, что имеется в виду.

    • @dmitriy5058
      @dmitriy5058 4 ปีที่แล้ว

      @@comrade_excel
      Попробую быстро накидать пример (в упрощенном варианте и пока без учета советов по очередности ссылок на поля и строки).
      Шаг "Таблица", в которой после n-ого количества шагов преобразований есть поля "Категория", "Товар", "Результат", "Индекс".
      Т.е. для List.Generate списка в источнике нет, он получается уже в результате преобразований и, как я понимаю, сохранить его как отдельный запрос можно только с повтором всех предыдущих шагов запроса, т.к. исходные данные естественно изменяются (что не оптимально).
      Создаем новый столбец после шага "Таблица"
      Внутри:
      = Table.AddColumn (Таблица, "Column1",
      each
      List.Generate (
      ()=> [i = 0, x = Таблица[Результат]{[Индекс]-2}], /* inital */
      each i < 2, /* condition */
      each [i = [i]+1, x = Таблица[Результат]{[Индекс]-2+[i]}], /* next */
      each [x] /* selector */
      )
      )
      На этапе "next" получаем: Expression.Error: Поле "Индекс" записи не найдено.
      Т.е. понимаю, что поле "Индекс" в данном случае PQ ищет внутри таблицы, созданной в цикле.
      Вопрос: как правильно написать ссылку на этапе "next" на ячейку из таблицы в предыдущем шаге "Таблица[Результат]{[Индекс]}".
      Спасибо.
      Мысль была [Индекс] сохранить в отельное поле (переменную) на этапе "inital"
      ()=> [i = 0, И = [Индекс], x = Таблица[Результат]{[И]-2}],
      а на этапе "next" переназначить:
      each [i = [i]+1, И = [И], x = Таблица[Результат]{[И]-2+[i]}],
      Но пока не пробовал :). И не уверен, что изнутри цикла обращение к таблице в предыдущем шаге сработает.
      P.S. Понимаю, что все на голом энтузиазме и нас тут "недоумников" много, поэтому если нет возможности ответить - забейте.
      Здоровья Вам и всяческих успехов.

    • @comrade_excel
      @comrade_excel  4 ปีที่แล้ว +1

      @@dmitriy5058 В параметре next можно работать только с теми переменными, что есть в параметре initial. Дополнительные поля можно добавлять в шаге selector.

  • @ivanmamchych5802
    @ivanmamchych5802 4 ปีที่แล้ว

    Большое спасибо за урок. Очень познавательно и интересно.
    Не знаю Вашей дальнейшей программы курса, но в качестве пожелания (если таковые интересуют) я бы попросил в дальнейшем коснуться тем округления результатов до двух знаков, а также точной разбивки сумм по какой-либо процентовке с округлённым результатом. Если не вполне ясно, я могу расшифровать поподробнее. Просто обе задачи возникают у меня довольно часто и я не уверен, что справляюсь с ними оптимальным способом в Power Query. Спасибо

    • @comrade_excel
      @comrade_excel  4 ปีที่แล้ว

      Пожалуйста! По округлениям урок будет. Второе не понял.

    • @ivanmamchych5802
      @ivanmamchych5802 4 ปีที่แล้ว

      @@comrade_excel По "второму": В таблице А хранятся точные суммы с 2-умя знаками после запятой (к примеру, ID и зарплата). В таблице B базис для процентовки (к примеру, ID и отработанные часы по отделам за период). Задача - разбить суммы зарплат сотрудников по их отработанному времени в каждом периоде и при этом разбитый результат должен быть округлён до 2-ух знаков и общая сумма разбитого результата должна быть равна сумме з/п. То есть, разбивка чего-то дробного (2 знака) по какой-то процентовке и результат должен быть дробным (2 знака) и точным.
      Я это часто использую в работе через Power Query (нахожу процентовку, делаю Merge, умножаю сумму на процент, округляю результат, проверяю общую сумму с суммой разбитых частей и корректирую результат). Могу переслать файл с примером и кодом M.

    • @comrade_excel
      @comrade_excel  4 ปีที่แล้ว

      Я не понимаю в чем здесь может быть проблема? Здесь же все понятно.

    • @ivanmamchych5802
      @ivanmamchych5802 4 ปีที่แล้ว

      @@comrade_excel Проблема в том, что когда большая дробная сумма (к примеру 1,017.23) разбивается на много строк по процентовке и результат округляется до 2-ух знаков, то сумма этих округлённых результатов не обязательно будет равна 1,017.23. Может быть + / - 0.01. Например 1,017.24. А это уже неправильно. Поэтому приходится прибегать к дополнительному сравниванию и корректировке

    • @comrade_excel
      @comrade_excel  4 ปีที่แล้ว

      @@ivanmamchych5802 Причем тут Power Query? Вы если это сделаете на бумаге, то получится так же.
      Если вы 3 копейки разделите на 2, то получится по 1.5 копейки, а при округлении до целого у каждого выйдет по 2 копейки. В результате в сумме 4 копейки, а не 3.

  • @nachfinbolshevik
    @nachfinbolshevik 2 ปีที่แล้ว +1

    тяжёлые конечно для понимания функции :(

  • @ЕвгенийХильчук-р6ъ
    @ЕвгенийХильчук-р6ъ 4 ปีที่แล้ว

    Добрый день. Прошу разобрать пример, который довольно таки часто требуется на практике: разложить дебиторскую кредиторскую задолженность по срокам ее возникновения. Т.е. согласно одного и того же договора есть много платежей и накладных. И нужно отобрать те платежи (или накладные), которые остались не закрытыми. Закрытие по методу ФИФО. Я вышел на результат, но понимаю что можно сделать оптимально с функцией Generate. Пока знаний не хватает)

    • @comrade_excel
      @comrade_excel  4 ปีที่แล้ว

      Отправьте мне ссылку на файлы. Исходники + как должен выглядеть итоговый результат. Я посмотню.

    • @ЕвгенийХильчук-р6ъ
      @ЕвгенийХильчук-р6ъ 4 ปีที่แล้ว

      @@comrade_excel drive.google.com/file/d/1hmQH1Qgfddi40M76Aimli0foCqGaEgIE/view?usp=sharing

  • @ДмитрийНикитин-и8о
    @ДмитрийНикитин-и8о 10 หลายเดือนก่อน

    Верная нумерация урока - №28

  • @NotEmpty2011
    @NotEmpty2011 3 ปีที่แล้ว

    2:38 Как наколдовать, чтобы так же разбивало по строкам и подсвечивало? У меня без подсветки и все в одну строку

    • @comrade_excel
      @comrade_excel  3 ปีที่แล้ว +1

      По строкам разбиваю я сам. Подсветка есть в версии Microsoft Office 365.