Формула для имитации поведения сводной таблицы

#excel #excel-formula

#excel #excel-формула

Вопрос:

Я хочу сделать то, что довольно легко сделать со сводной таблицей, но с помощью одной единственной формулы, которая заключается в группировании всех категорий в «столбце категории» с их соответствующими суммами, а затем возвращает категорию, которая имеет максимальное значение.

В Google sheets я мог бы использовать формулу запроса с group by, но в Excel я не уверен, возможно ли это.

 Category            value
A                   20
B                   7
A                   30
B                   12
A                   3
B                   5
  

Формула должна возвращать «A», поскольку сумма всех «A» = 53, а «B» составляет всего 22

Примечание: В моей электронной таблице может быть до тысячи категорий.

Ответ №1:

Это можно сделать с помощью ИНДЕКСА / АГРЕГАТА в виде формулы массива:

 =INDEX(A:A,AGGREGATE(15,7,ROW($A$2:$A$7)/(SUMIFS(B:B,A:A,$A$2:$A$7)=MAX(SUMIFS(B:B,A:A,$A$2:$A$7))),1))
  

Будучи формулой массива, она должна быть подтверждена с помощью Ctrl-Shift-Enter вместо Enter при выходе из режима редактирования.

введите описание изображения здесь

Комментарии:

1. есть ли способ сделать часть $ A $ 2: $ A $ 7 динамической? Поскольку я не знаю, сколько строк у меня будет.

2. Да, замените все $A$2:$A$7 на $A$2:INDEX(A:A,MATCH("zzz",A:A))