rss
  •  

Нарастающий итог в Power Query

| Категория: PowerQuery, Надстройки Power, Приемы и советы |

1

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

Например, есть таблица и необходимо вычислить накопительным итогом по месяцам, начиная с начала года:

Алгоритм действий:

  1. Добавить столбец индекса с 1.

2. Добавить пользовательский столбец, например, Диапазон, с использованием функции List.Range.

List.Range(list as list, offset as number, optional count as nullable number) as list

В результате сформированы списки — каждый раз от 1-го элемента до текущего:

3. Суммировать элементы списка функцией List.Sum. Добавить пользовательский столбец, например, Накопительный итог:

=List.Sum([Диапазон])

4. Удалить лишние столбцы, настроить типы данных — результат готов:

… но это не единственный способ. И в нем есть плюсы и минусы.




Оставьте комментарий!

На сообщение “Нарастающий итог в Power Query” комментарий: 1

  1. Владимир:

    Долго искал нарастающий итог по условию, аналог СУММЕСЛИ.
    В итоге разобрался, если кому поможет вот функция:
    (Таблица, КолСтрок) =>
    let
    RowFirst = Table.FirstN(Таблица,КолСтрок),
    AutoFilter = Table.SelectRows(RowFirst, each ([#»ID Позиции»] = Table.LastN(RowFirst, 1){0}[#»ID Позиции»])),
    Итог = List.Sum(AutoFilter[#»Количество потребности»])
    in
    Итог

    Где #»ID Позиции» это столбец условия, а #»Количество потребности» это столбец суммирования при выполнении условия