2016-04-01 3 views
1

с использованием формулы, я ищу, чтобы получить максимальное значение столбца C для каждого уникального значения в столбце A, затем I Также хотелось бы вернуть соответствующее значение из столбца B в макс. столбца C. вывод должен быть сводкой данных, как во втором захвате экрана. Я попытался сводные таблицы, условное форматирование и помощь в этой связи не повезло Get the maximum values of column B per each distinct value of column AMicrosoft Excel - для каждого уникального значения в столбце A, возвращайте максимальное значение из столбца C и соответствующее значение из B

original data

desired result

Возможно ли это с формулами?

ответ

0

Таким образом, для числа Макс использовать AGGREGATE() Функция:

=AGGREGATE(14,6,$C$2:INDEX(C:C,MATCH(1E+99,C:C))/($A$2:INDEX(A:A,MATCH(1E+99,C:C))=I2),1) 

Тогда, чтобы найти ПОТЕНЦИАЛ простой SUMIF():

=SUMIFS(B:B,A:A,I2,C:C,K2) 

enter image description here

агрегированном() Функция была введена в Excel 2010.


Для других версий, тем менее надежным формулу массива MAX (IF()) будет работать вместо AGGREGATE:

=MAX(IF($A$2:INDEX(A:A,MATCH(1E+99,C:C))=I2,$C$2:INDEX(C:C,MATCH(1E+99,C:C)))) 

Будучи массив Формула должна быть подтверждена с помощью Ctrl-Shift-Enter, при выходе из Edit Режим. Когда все сделано правильно, Excel автоматически поместит {} вокруг формулы, чтобы обозначить формулу массива.

Другой, если у вас есть последний Office 365 или с помощью онлайн-приложение, следующий не CSE MAXIFS() будет работать также:

=MAXIFS($C$2:INDEX(C:C,MATCH(1E+99,C:C)),$A$2:INDEX(A:A,MATCH(1E+99,C:C)),I2) 

Эти два не столь надежен, как АГРЕГАТА() в том, что они будет нарушена, если в данных будут ошибки. AGGREGATE() будет игнорировать их.

0

Вот еще один вариант использования формулы Array в таблице. Я не делал этого, начиная с A1 в моем листе, так что у изображения есть мои идентификаторы ячеек/строк, чтобы помочь!

Array formula using Tables, Max, Lists, etc

клеток М17: =IFNA(INDEX([Host], MATCH(0, COUNTIF($M$16:M16, [Host]), 0)),"Unknown") + Ctrl + Shift + Enter

клеток Н17: =MAX(IF([Host]=[@UniqueHost],[Duration])) + Ctrl + Shift + Enter

сотовый О17: =IFNA(INDEX([Capacity],MATCH([@UniqueHost]&[@MaxDuration],[Host]&[Duration],0)),0) + Ctrl + Shift + Enter

Смежные вопросы