我按你的思路,大佬这个代码怎么优化会更好呢
let
源 = Excel.CurrentWorkbook(){[Name="表2"]}[Content],
更改的类型 = Table.TransformColumnTypes(源,{{"日期", type date}}),
分组的行 = Table.Group(更改的类型, {"日期"}, { {"数量", each List.Sum([数量])},{"数量2", each List.Sum([数量2])} }),
已添加索引 = Table.AddIndexColumn(分组的行, "索引", 1, 1, Int64.Type),
数量累计 = Table.AddColumn(已添加索引, "数量和", each List.Sum(Table.FirstN(已添加索引,[索引])[数量])),
数量2累计 = Table.AddColumn(数量累计, "数量2和", each List.Sum(Table.FirstN(已添加索引,[索引])[数量2])),
已添加自定义 = Table.AddColumn(数量2累计, "自定义", each [a=Table.ToList(数量2累计, each {_{0},_{4}}),A=Table.ToList(数量2累计, each {_{0},_{5}}),
b= List.Transform(List.Skip(数量2累计[数量],1),each {"新增",_}),B= List.Transform(List.Skip(数量2累计[数量2],1),each {"新增",_}),
c= List.Zip({a,b}), C= List.Zip({A,B}),
d= List.Combine(c), D=List.Combine(C),
e= List.RemoveLastN(d,1), E= List.RemoveLastN(D,1),
f= Table.FromRows(e,{"日期","数量"}),F=Table.FromRows(E,{"日期","数量2"}),
g= Table.ToColumns(f)& Table.ToColumns(F) ][g] )[自定义],
自定义3 = Table.FromColumns(List.Combine(List.FirstN(已添加自定义,1))),
删除的列 = Table.RemoveColumns(自定义3,{"Column3"}),
重命名的列 = Table.RenameColumns(删除的列,{{"Column1", "日期"}, {"Column2", "数量"}, {"Column4", "数量2"}})
in
重命名的列
|