
Общая формула
(=SMALL(IF(criteria,values),n))
Резюме
Чтобы получить 2-е наименьшее значение, 3-е наименьшее значение, 4-е наименьшее значение и т. Д., Где каждое значение соответствует заданным критериям, вы можете использовать формулу массива, которая использует функции НАИМЕНЬШИЙ и ЕСЛИ.
В показанном примере формула G7 выглядит так:
(=SMALL(IF(Sex="F",Time),F7))
Где «Пол» - это именованный диапазон для C3: C15, а «Время» - именованный диапазон D3: D15.
Примечание: это формула массива, и ее необходимо вводить с помощью Control + Shift + Enter.
Объяснение
Функция МАЛЕНЬКИЙ полностью автоматическая - вам просто нужно указать диапазон и целое число для «nth», чтобы указать желаемое ранжированное значение.
Проблема в этом случае заключается в том, что мы не хотим, чтобы SMALL работал с каждым значением в диапазоне, а только со значениями мужского или женского пола (M или F). Чтобы применить этот критерий, мы используем функцию ЕСЛИ, которая обеспечивает логический тест для «M» или «F». Поскольку мы применяем тест к массиву значений, результатом также будет массив. В показанном примере , результирующий массив выглядит так:
(0,00729166666666667; FALSE; 0,00689814814814815; FALSE; 0,00835648148148148; FALSE; FALSE; FALSE; FALSE; 0,00693287037037037; FALSE; FALSE; 0,00672453703703704)
Где FALSE представляет мужское время, а числа - женское время. (Такие времена являются дробными значениями, поэтому иногда у нас так много десятичных знаков).
Функция SMALL автоматически игнорирует значения TRUE и FALSE, поэтому результатом будет n-е наименьшее значение из набора фактических чисел в массиве.
Ошибка без n-го
Вы получите сообщение об ошибке, если не будет n-го наименьшего значения на основе заданных критериев. Вы можете перехватить эту ошибку с помощью ЕСЛИОШИБКА и заменить любое значение, имеющее смысл следующим образом:
(=IFERROR(SMALL(IF(Sex="F",Time),F8),"-"))
Несколько критериев
Для обработки нескольких критериев вы можете расширить формулу с помощью логической логики в такой форме:
=SMALL(IF((criteria1)*(criteria2),values),n)
Где критерии1 и критерии2 и представляют выражение для проверки значений в диапазоне критериев, как показано в исходном примере выше.