
Обща формула
(=MAX(IF(range=criteria,values)))
Обобщение
За да получите максимална стойност въз основа на критерии, можете да използвате функцията MAX заедно с функцията IF във формула на масив. В показания пример формулата в клетка G6 е:
(=MAX(IF(names=F6,times)))
Където names е наименуваният диапазон B6: B17, а times е наименуваният диапазон D6: D17.
Забележки: това е формула на масив и трябва да се въведе с Control + Shift + Enter. По-късните версии на Excel имат функция MAXIFS, вижте бележката по-долу.
Обяснение
Функцията IF се оценява първо. Логическият тест е израз, който тества всички имена:
IF(names=F6 // logical test
Резултатът е масив от TRUE / FALSE стойности като този:
(TRUE;FALSE;FALSE;TRUE;FALSE;FALSE;TRUE;FALSE;FALSE;TRUE;FALSE;FALSE)
ИСТИНСКИ стойности съответстват на редове, където името е „Хана“. За всички останали имена стойността е FALSE. "Стойността ако е вярно" за IF е наименувания диапазон времето си, който съдържа пълния набор от време. Не се предоставя „стойност, ако е невярно“:
IF(names=F6,times)
Крайният резултат от IF е масив като този:
(0.000868055555555556;FALSE;FALSE;0.000902777777777778;FALSE;FALSE;0.000914351851851852;FALSE;FALSE;0.000833333333333333;FALSE;FALSE)
Забележка: Времето в Excel са дробни стойности, което обяснява дългите десетични знаци.
Функцията IF действа като филтър. Само стойностите на времето, свързани с TRUE, преминават през филтъра, други стойности се заменят с FALSE.
Функцията IF доставя този масив директно на функцията MAX, която автоматично игнорира FALSE стойности и връща максималното време в масива.
С МАКСИФИ
Функцията MAXIFS, налична в Excel O365 и Excel 2019, е проектирана да връща максимална стойност въз основа на един или повече критерии, без да е необходима формула на масив. С MAXIFS формулата в G6 е:
=MAXIFS(times,names,F6)