Формула Excel для расчета суммы первых n% видимых строк в отфильтрованном столбце - PullRequest
0 голосов
/ 04 июня 2019

Example sheet

Как я уже говорил в заголовке, я хочу вычислить сумму первых n% строк в отфильтрованном столбце. Общее количество строк в столбце зависит от параметров фильтрации, поэтому моя формула должна работать с различными значениями n.

Например: В столбце A у меня есть 10 строк, которые содержат значения от 10 до 1 (я отсортировал их от наибольшего к наименьшему). В столбце B у меня есть 10 соответствующих строк, которые содержат 2 имени: 4 из них содержат значение «Tom», шесть из них содержат значение «Jerry». Когда я фильтрую всю таблицу и выбираю только те строки, которые содержат значение «Джерри», я хочу вычислить сумму первых 20% соответствующих 6 числовых значений.

Ответы [ 3 ]

0 голосов
/ 04 июня 2019

Вы можете использовать функцию процентили в AGGREGATE с SUMIFS, чтобы делать то, что вы хотите:

=SUMIFS(A:A,B:B,"Jerry",A:A,">="&AGGREGATE(16,7,A1:A10/(B1:B10="Jerry"),0.8))

enter image description here


Если вы хотитеиспользуйте фильтр для принятия решения:

=SUMPRODUCT(SUBTOTAL(3,OFFSET(A1,ROW(A2:A10)-1,,1))*(A2:A10>=AGGREGATE(16,7,A2:A10,0.8)),A2:A10)

enter image description here enter image description here

0 голосов
/ 04 июня 2019

Это может работать без фильтрации, если хотите.

enter image description here

С критериями для столбца B в E1 и процентом, который вы ищете в F1 с предположением, что мы хотим округлить процент до целых чисел.

Итак, формула в D1:

=SUMPRODUCT(LARGE((B2:B11=E1)*(A2:A11),ROW(A1:INDEX($A:$A,ROUNDUP(COUNTIF(B2:B11,E1)*F1,0)))))
0 голосов
/ 04 июня 2019

Итак, без ваших данных я придумал это, отредактировал в соответствии с вашей ситуацией ...

Итак, основываясь на комментарии, я сделал вторую версию:

enter image description here

Вспомогательный столбец в столбце C используется с sumproduct для получения результата ...

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...