Как вариант.... //*********fnABC по методу среднего fnABC=(x)=>[nms=List.Buffer(Table.ColumnNames(x)), sales=List.Buffer(x[Sales]), av1=List.Average(sales), av2=List.Average(List.Select(sales,(x)=>xx &{[l=List.Last(x), g= if l>av1 then "A" else if l x,nms&{"ABC"}), ord=Table.Sort(t,{"ABC"})][ord], //********************* t=Table.Group(add_sales,"product_group", {"gr", fnABC} ), to=Table.Combine(t[gr])
Файлы для спонсоров Boosty: boosty.to/comrade-xl/posts/727b9691-37be-4c97-9c40-4f308ccb01bf?share=post_link
Файлы для спонсоров ВК: vk.com/comrade.excel?w=wall-185123800_1058
💻 Страница урока на сайте: comrade-xl.ru/2023/10/29/pq-vars-abc-categories/
Индивидуальное обучение/консультации: comrade-xl.ru/pq-training/
Классно! 👍 Как всегда, очень полезный и познавательный урок! 🤔Спасибо, Тимур! 🤝Удачи и всех благ!
Классно, я через такие дебри делала анализ по категориям, а теперь функцию скопировать можно и все быстро работает. Спасибо огромное ❤
Забавный оксюморон - «товарищ excel» )))
Как вариант....
//*********fnABC по методу среднего
fnABC=(x)=>[nms=List.Buffer(Table.ColumnNames(x)),
sales=List.Buffer(x[Sales]),
av1=List.Average(sales),
av2=List.Average(List.Select(sales,(x)=>xx &{[l=List.Last(x), g= if l>av1 then "A" else if l x,nms&{"ABC"}),
ord=Table.Sort(t,{"ABC"})][ord],
//*********************
t=Table.Group(add_sales,"product_group", {"gr", fnABC} ),
to=Table.Combine(t[gr])