Функция НАИМЕНЬШИЙ() в EXCEL

history

Функция НАИМЕНЬШИЙ( ) , английский вариант SMALL(), возвращает k-ое наименьшее значение из массива данных. Например, если диапазон A1:А4 содержит значения 2;10;3;7, то формула = НАИМЕНЬШИЙ (A1:А4;2) вернет значение 3 (второе наименьшее).


Синтаксис

НАИМЕНЬШИЙ ( массив ; k )

Массив — ссылка на диапазон ячеек, содержащие данные, для которых определяется k-ое наименьшее значение. Также возможен ввод в качестве аргумента массива констант , например, = НАИМЕНЬШИЙ({10:20:30:40:50};1) .Формула вернет значение 10 (1-ое нименьшее).

k — позиция (начиная с наименьшей) в массиве или диапазоне ячеек. Если k < 0 или k больше, чем количество значений в массиве , то функция НАИМЕНЬШИЙ () возвращает значение ошибки #ЧИСЛО!

Что бывает, если диапазон содержит не только числа?

Пустые ячейки, логические значения (ЛОЖЬ и ИСТИНА) и текст функцией игнорируются. Это видно из таблицы в файле примера .

Как видно из таблицы (столбец D), значение ошибки приводит к ошибке в формуле. Если такая ситуация возможна, то создайте с помощью формулы = ЕСЛИОШИБКА (A1;"ф") новый диапазон, которая заменит ошибку на текст, который игнорируется функцией. Конечно, нужно также изменить ссылку на диапазон в соседнем столбце.

Что бывает, если диапазон не содержит числа?



Если в массиве нет ни одного числового значения, то функция вернет значение ошибки #ЧИСЛО!, что выгодно ее отличает от функции МИН() , возвращающую в этом случае 0!

Если такая ситуация возможна и необходимо вычислить минимальное значение, то вместо функции МИН() нужно использовать формулу = НАИМЕНЬШИЙ (массив;1)

Примечание : Формула = НАИМЕНЬШИЙ (массив;n) вернет наибольшее (максимальное) значение из массива размера n. Т.е. формула = НАИМЕНЬШИЙ (массив;1) эквивалентна =МИН(массив) , а = НАИМЕНЬШИЙ (массив;n) эквивалентна =МАКС(массив)

Значение числа в текстовом формате игнорируется функцией НАИМЕНЬШИЙ () (см. столбец Е на рисунке выше). Перед нахождением наименьшего значения можно попытаться преобразовать все значения в числовой формат. Это можно сделать формулой массива = НАИМЕНЬШИЙ (ЕСЛИ(ЕЧИСЛО(E5:E9+0);E5:E9+0;"");1)

Что бывает, если в диапазоне есть повторы

Если имеется исходный массив {1;3; 3 ;6;6;7}, то третьим наименьшим (по версии функции НАИМЕНЬШИЙ () ) будет считаться 3, а не 6. Все правильно и логично, но иногда об этом забывают. С человеческой точки зрения третьим наименьшим будет все-таки, наверное, 6 (т.е. повторы мы не учитываем).

Наименьший с учетом условия

В отличие от функции СУММ() и СЧЁТ() у НАИМЕНЬШИЙ () в MS EXCEL 2010 нет аналога СУММЕСЛИ() и СЧЁТЕСЛИ() , позволяющих выполнять вычисления с учетом условия. Но, с помощью формул массива можно получить формулу для нахождения наименьшего с учетом условия (как это сделать см. здесь ).

Кстати, в Excel для Office 365 есть функция МИНЕСЛИ().

Сумма 3-х наименьших

С помощью нестандартной записи второго аргумента можно расширить возможности функции НАИМЕНЬШИЙ () . Например, найдем сумму 3-х наименьших значений из диапазона A5:A9 = СУММ( НАИМЕНЬШИЙ (A5:A9;{1;2;3}))

Второй аргумент введен как константа массива , что позволило найти 3 наименьших значения.

Аналогично можно найти, например, среднее 2-х наименьших: =СРЗНАЧ( НАИМЕНЬШИЙ (A5:A9;{1;2}))

Удивительно, но 2 последние формулы даже не обязательно вводить как формулы массива .

Другие применения функции

Функция НАИМЕНЬШИЙ () является достаточно часто используемой, т.к. она позволяет упорядочивать числовые массивы. Ее можно, например, использовать для сортировки списков и таблиц .


Комментарии

Только для авторизованных пользователей

Аноним, 17 мая 2018 г.
МОЖНО ЛИ ВЫЧЕСТЬ НАИМЕНЬШЕЕ НЕ ИЗ МАССИВА, А ИЗ ОТДЕЛЬНО ВЗЯТЫХ ЯЧЕЕК (A1, A3, A5, A7)?
Михаил, 17 мая 2018 г.
Можно, но с помощью формул массива. Профессионалы избегают решения таких задач, т.к. они появляются из-за некорректно составленных таблиц. Можете сделать диапазон, в который вывести значения из нечетных строк, затем применить функцию.
Аноним, 18 мая 2018 г.
[id295933596|Михаил], я бы с удовольствием избежал, но заказчику нужно что бы формат был таким. Спасибо за совет!
Михаил, 18 мая 2018 г.
Ну, так бы сразу и сказали, что Вы профессионал ))) =НАИМЕНЬШИЙ(ЕСЛИ(ОСТАТ(СТОЛБЕЦ(E6:P6)-СТОЛБЕЦ($C$6);3);"a";E6:P6);1)
(только для авторизованных пользователей)

© Copyright 2013 - 2024 Excel2.ru. All Rights Reserved