let
Источник = Excel.CurrentWorkbook(){[Name="Таблица1"]}[Content],
#"Измененный тип" = Table.TransformColumnTypes(Источник,{{"Группа", Int64.Type}, {"Признак", type text}, {"Дата", type date}, {"Список", Int64.Type}}),
#"Сортированные строки" = Table.Sort(#"Измененный тип",{{"Группа", Order.Ascending}, {"Дата", Order.Ascending}}),
#"Сгруппированные строки" = Table.Group(#"Сортированные строки", {"Группа"}, {{"Таблица", each
let
#"Добавлен индекс" = Table.AddIndexColumn(_, "Индекс", 1, 1),
#"Добавлен пользовательский объект" = Table.AddColumn(#"Добавлен индекс", "Вычет", each if [Признак] = "Нет" then -[Индекс] else null),
#"Заполнение вниз" = Table.FillDown(#"Добавлен пользовательский объект",{"Вычет"}),
#"Добавлен пользовательский объект1" = Table.AddColumn(#"Заполнение вниз", "СписокPQ", each List.Sum({[Индекс], [Вычет]})),
#"Удаленные столбцы" = Table.RemoveColumns(#"Добавлен пользовательский объект1",{"Индекс", "Вычет"})
in
#"Удаленные столбцы"
, type table}}),
#"Развернутый элемент Таблица" = Table.ExpandTableColumn(#"Сгруппированные строки", "Таблица", {"Признак", "Дата", "Список", "СписокPQ"}, {"Признак", "Дата", "Список", "СписокPQ"})
in
#"Развернутый элемент Таблица" |