let
Источник = Excel.CurrentWorkbook(){[Name="Таблица1"]}[Content],
#"Измененный тип" = Table.TransformColumnTypes(Источник,{{"Title", type text}, {"Date", type date}, {"Month", Int64.Type}, {"Count", Int64.Type}, {"Sum", Int64.Type}}),
month = let
a = List.Max(#"Измененный тип"[Month]),
b = {0..a}
in
Table.Buffer(Table.FromList(b, Splitter.SplitByNothing(), {"Month"}, null, ExtraValues.Error)),
#"Сгруппированные строки" = Table.Group(#"Измененный тип", {"Title", "Date"}, {{"f", each
let
a = Table.Sort(_, {"Month", Order.Descending}),
b = Table.AddIndexColumn(a, "i",1,1),
buf = List.Buffer(b[Count]),
c = Table.AddColumn(b, "Sum_", each List.Sum(List.Range(buf,0, [i]))),
c1=Table.Combine({c, month}),
d = Table.Sort(c1, {"Month", Order.Descending}),
e = Table.FillDown(d, {"Title", "Date", "Sum_"}),
f = Table.Distinct(e, {"Title", "Date", "Month","Sum_"}),
g = Table.Sort(f, {"Month", Order.Ascending})
in
g}}),
#"Развернутый элемент f" = Table.ExpandTableColumn(#"Сгруппированные строки", "f", {"Month", "Count", "Sum", "Sum_"}, {"Month", "Count", "Sum", "Sum_"})
in
#"Развернутый элемент f"
|