Green-sell.info

Новые технологии
1 просмотров
Рейтинг статьи
1 звезда2 звезды3 звезды4 звезды5 звезд
Загрузка...

Функция наибольший в excel

Функция НАИБОЛЬШИЙ() в EXCEL

Синтаксис

НАИБОЛЬШИЙ ( массив ; k )

Массив — ссылка на диапазон ячеек, содержащие данные, для которых определяется k-ое наибольшее значение. Также возможен ввод массива констант , например, = НАИБОЛЬШИЙ(<10:20:30:40:50>;1)

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

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

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

Значение ошибки в ячейке приводит к ошибке в формуле. Прежде чем применять функцию НАИБОЛЬШИЙ () — обработайте ошибку, например с помощью функции ЕСЛИОШИБКА() .

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

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

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

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

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

Сумма 3-х наибольших

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

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

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

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

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

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

Анализ топовых значений функциями НАИБОЛЬШИЙ и НАИМЕНЬШИЙ

Скорее всего вам известны простые функции МИН (MIN) и МАКС (MAX) , позволяющие быстро найти минимальное или максимальное значение в таблице. Но что если нам требуется найти, например, не самое большое, а 2-е или 5-е значение в ТОПе? Здесь помогут функции НАИБОЛЬШИЙ (LARGE) и НАИМЕНЬШИЙ (SMALL) .

Синтаксис этих функций похож:

=НАИБОЛЬШИЙ( Диапазон ; Позиция )

=НАИМЕНЬШИЙ( Диапазон ; Позиция )

  • Диапазон – диапазон ячеек с числами, которые мы проверяем.
  • Позиция – целое число, представляющее собой позицию (ранг, номер в рейтинге) извлекаемого элемента.

Например, если у нас есть таблица с прибылями по товарам, то с помощью функции НАИБОЛЬШИЙ можно легко определить максимальное (первое в рейтинге) значение из диапазона прибыли (B2:B22), которое фактически будет тождественно формуле МАКС(B2:B22):

Аналогичным образом, функция

… выдаст следующее за ним максимальное (2-е в рейтинге) и т.д.

Массив констант и сумма ТОПов

Что интересно, аргумент Позиция может быть не просто числом, а набором чисел — массивом констант в фигурных скобках. Так, например, для получения суммы первых трех максимальных значений в диапазоне можно использовать формулу с прописанным внутри массивом констант для первых трех позиций (сочетание Ctrl+Shift+Enter в конце можно не нажимать, хотя по факту это и формула массива):

Сортировка формулой

Функцию НАИМЕНЬШИЙ (SMALL) очень удобно использовать для сортировки формулой набора числовых значений. Для этого достаточно сделать вспомогательную нумерацию (1, 2, 3. ) и ссылаться на нее во втором аргументе:

Если вместо НАИМЕНЬШИЙ использовать функцию НАИБОЛЬШИЙ, то сортировка, естественно, будет уже по убыванию.

Только числа

Еще одной полезной особенностью этих функций является то, что они игнорируют все, кроме чисел, т.е. «не видят» текст и логические значения (ИСТИНА, ЛОЖЬ). Это бывает полезно использовать, например, для извлечения всех сумм по заданному наименованию, когда товар встречается больше одного раза и ВПР (VLOOKUP) уже не поможет:

В этом примере функция ЕСЛИ (IF) в столбце С проверяет наименование на соответствие заданному (Огурцы) и выводит сумму или логическую ЛОЖЬ. А для извлечения потом всех полученных сумм из столбца С используется наша функция НАИМЕНЬШИЙ, которая игнорирует ЛОЖЬ — и мы получаем список стоимостей всех сделок по нужному товару.

Exceltip

Блог о программе Microsoft Excel: приемы, хитрости, секреты, трюки

Функции НАИБОЛЬШИЙ и НАИМЕНЬШИЙ Excel

Случаются ситуации, когда нам необходимо определить минимальное или максимальное значение диапазона данных. Такие ситуации не создают особых проблем, в этом случае мы пользуемся функциями МИН и МАКС, которые возвращают минимальное и максимальное значение. Они не требуют особых навыков владения Excel, требуется лишь задать один аргумент – диапазон данных – и результат не заставит ждать. Гораздо интереснее ситуации складывается, когда требуется определить второй, третий, … k-ый наименьший/наибольший элемент в диапазоне. В этом случае нам помогут Excel функции НАИБОЛЬШИЙ или НАИМЕНЬШИЙ. В сегодняшней статье мы рассмотрим, как найти k-ый минимальный или максимальный элемент (в статье будет рассмотрена функция НАИМЕНЬШИЙ, все сказанное, будет также относиться и к функции НАИБОЛЬШИЙ).

Читать еще:  Создание таблицы в excel

Описание функции НАИМЕНЬШИЙ

Функция НАИМЕНЬШИЙ возвращает k-ый наименьший элемент в диапазоне данных или массиве, содержащих числовые значения. К примеру, вы можете использовать функцию НАИМЕНЬШИЙ, чтобы найти третье наименьшее значение диапазона. Синтаксис функции выглядит следующим образом:

Массив – массив или диапазон числовых данных, для которых определяется k-ое наименьшее значение.

K – позиция искомого наименьшего значения (начиная с наименьшей) в массиве или диапазоне.

Обратите внимание, что функция НАИМЕНЬШИЙ вернет ошибку #ЧИСЛО!, если массив данных будет пустым или k будет больше, чем количество элементов в массиве. Если в диапазоне данных будут находиться текстовые значения, Excel будет игнорировать эти данные.

Пример использования функции НАИМЕНЬШИЙ

Рассмотрим на примере, как функция возвращает 1-й, 2-й, 3-й, 4-й и 5-й наименьший элемент из диапазона данных A1:A5.

Здесь мы по порядку указали наименьшие значения от самого маленького до самого большого. Другими словами, мы сделали сортировку от наименьшего к наибольшему. Подобную методику мы применяли при создании дашборда в статье Добавление возможности сортировки по KPI для дашборда.

Обратите внимание, что функция со значением параметра k=1 дает тот же результат, что и функция МИН. И наоборот, если мы укажем значение k равным количеству элементов в массиве, функция будет работать аналогично функции МАКС.

Сумма первых трех наибольших значений

Функции НАИБОЛЬШИЙ и НАИМЕНЬШИЙ часто используются в формулах массивов, так как для параметра k, можно задать несколько элементов поиска. То есть, если нам необходимо определить сумму первых трех наибольших значений диапазона данных, первое, что нам придет в голову, это записать формулу таким образом:

Однако, можно переписать функцию НАИБОЛЬШИЙ, используя функцию массива:

Здесь мы указали Excel, что нам необходимо вернуть первые три наибольших значения <1;2;3>, из диапазона A1:A5 и просуммировать их.

Фигурные скобки <> обычно используются в формулах массивов, тем не менее, в данном случае вам не нужно использовать сочетания клавиш Shift+Enter, чтобы указать Excel, что это формула массива. А просто вводить их так же, как и любые символы в формулах.

Вам также могут быть интересны следующие статьи

4 комментария

Добрый день! Проблема с использованием данной функции. Сортирует от большего к меньшему массив данных, но не учитывает отрицательные значения (после нуля; сортирую для дашборда). Что делаю неверно? Заранее большое спасибо!

Ирина, добрый день. Для данной функции нет ограничений по знакам, массив с отрицательными и положительными значениями он отсортирует от наименьшего к наибольшему. Возможно, вы используете текстовый формат, без примера, сложно что-либо говорить

Добрый день!
Не улавливаю как формулу построить. Нужно в таблице по условию (М или Ж) вывести рейтинг с ФИО и результатом (документ прилагаю, нужно заполнить желтую область).
Как то вывела сортировку по значению, но как к нему подставить ФИО? И догадываюсь, что сортировку значений можно сделать гораздо проще.
Буду благодарна за помощь.

#2. Решаем задачи в Excel. Поиск наибольшего значения

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

Предложенное решение этой задачи имеет один существенный недостаток. Дело в том, что функция МАКС возвращает первое максимальное значение из диапазона и на этом весь расчет прекращается. Это означает, что если в списке будет два или больше сотрудников с одинаковым возрастом, то в результатах мы увидим лишь первого по списку.

Давайте решим задачу таким образом, чтобы получился список всех сотрудников, имеющих максимальный возраст.

Итак, первым делом мы по-прежнему должны определить максимальный возраст. Для этого вполне подойдет функция МАКС , которую мы уже использовали ранее.

Ну а далее нам нужно сравнивать возраст каждого сотрудника с максимальным и в случае совпадения выводить имя сотрудника в столбце F ниже.

На первый взгляд ничего сложного, но не так все просто, как кажется и сейчас вы в этом убедитесь.

Дело в том, что все стандартные функции Экселя, которые сразу приходят на ум, выдадут лишь первое значение из диапазона, удовлетворяющее условию. Поэтому нам придется воспользоваться формулой массива .

Формула массива является частью стандартного функционала Экселя и многие даже не догадываются об ее существовании.

По сути, формула массива позволяет выполнять несколько вычислений с одним или несколькими элементами диапазона ячеек, то есть элементами массива. В итоге формула массива возвращает либо один результат вычислений, либо несколько результатов, то есть массив значений, что нам и нужно.

Не буду сейчас вдаваться в подробности, так как эта заметка и так будет довольно длинной. Если вы хотите узнать больше о формуле массива, то напишите об этом в комментариях и я раскрою тему подробнее в одной из следующих заметок.

Читать еще:  Перевести цифры прописью в excel

Итак, давайте решим задачу.

Как и в прошлый раз , воспользуемся функцией ИНДЕКС , которая возвращает значение ячейки, заданного номером строки и номером столбца.

Первый ее аргумент — массив значений. Выбираем все ячейки с именами сотрудников.

Далее мы должны указать второй аргумент — номер строки, из которой будет возвращено значение. Нам нужно выводить значение из столбца A той строки, в которой значение в столбце B равно вычисленному значению максимального возраста (находится в ячейке F1), и тут идеально подойдет функция ЕСЛИ — если вычисленное значение из ячейки F1 равно одному из значений диапазона B2:B6, то нам нужно вывести номер этой строки. Определить номер строки довольно просто и в этом нам поможет функция СТРОКА , которая выводит фактический номер строки, определяемый адресом ячейки.

Так, например, пустая функция СТРОКА() выведет номер строки Экселя, в которой находится сама эта формула. Мы же в формуле должны вывести номер строки из диапазона значений и у нас в первой строке Экселя находится заголовок таблицы, учитывать который не нужно. Поэтому из полученного номера строки вычтем единицу, чтобы исключить строку заголовка.

Ну а в случае когда условие функции ЕСЛИ не выполняется выведем пустую строку, для этого укажем две кавычки. Итоговая формула будет выглядеть так:

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

Думаю, что проще будет объяснять уже на готовой формуле. Отличаться она будет лишь дополнительной функцией НАИМЕНЬШИЙ , которой мы «обернем» наше условие.

Эта функция возвращает k -ое наименьшее значение во множестве данных. Множество данных определяется результатом функции ЕСЛИ , а вот аргумент k , нужно будет вычислять, так как он должен изменяться.

Для его вычисления снова воспользуемся функцией СТРОКА , но перед этим давайте разберемся с функцией НАИМЕНЬШИЙ , так как она не самая простая для понимания.

Рассмотрим ее на таком примере — введем диапазон значений 1, 2, 3, 4, 5 и укажем формулу:

То есть нам нужно вывести третье наименьшее значение в диапазоне.

Логично, что в диапазоне чисел третье наименьшее равно 3. Если же мы изменим в диапазоне 3 на 1, то и результат также изменится — на 2.

То есть функция проходит весь диапазон значений и, выстраивает их по возрастанию, а затем отсчитывает k -ое (в нашем примере третье) значение по списку.

Если изменить в диапазоне 2 на 1, то функция вернет единицу, так как третье наименьшее равно ей.

Надеюсь, работа этой функции прояснилась.

Теперь возвращаемся к нашей формуле. Выглядеть она будет так:

Здесь формула СТРОКА()-1 вычисляет аргумент k для функции НАИМЕНЬШИЙ .

Как я уже упоминал, пустая функция СТРОКА возвращает номер строки с формулой. Так как у нас формула находится во второй строке Экселя, то мы можем использовать это значение для вычисления соответствующего аргумента k . Чуть дальше мы рассмотрим работу формулы и вам станет понятен принцип вычисления.

Чтобы сделать формулу формулой массива необходимо нажать не Enter , а сочетание клавиш Ctrl+Shift+Enter .

На то, что формула стала формулой массива указывают фигурные скобки, в которые она была заключена.

Это не текстовые скобки, то есть нельзя их просто набрать с клавиатуры. Эти скобки появляются лишь при нажатии сочетания клавиш Ctrl+Shift+Enter и они указывают на то, что программа воспринимает данную формулу, как формулу массива.

Вы видите, что в ячейке F2 появился правильный результат.

Давайте проанализируем формулу с помощью соответствующего инструмента со вкладки Формулы .

Здесь мы можем по шагам проходить все вычисления в формуле и таким образом разобраться в порядке вычислений и в получаемых значениях.

Так как мы имеем дело с формулой массива, то на выходе будем иметь не одно значение, а массив данных, что мы сейчас и увидим.

В первую очередь проверяется условие в функции ЕСЛИ (текущее вычисление подчеркивается).

Мы видим, что условие выдало пять ответов, то есть массив значений, равный по размеру диапазону ячеек с именами сотрудников. Из пяти ответов только последний ИСТИНА , что мы можем также подтвердить, взглянув на первоначальный диапазон значений, в котором пока только у одного сотрудника возраст равен максимальному.

Далее на базе полученных значений функция СТРОКА выдает массив с номерами строк.

Поскольку условие у нас выполняется только в последней строке, то мы получим четыре пустых значения (кавычки) и цифру 5, соответствующую пятой строке массива данных:

Переходим к функции НАИМЕНЬШИЙ , которая должна вернуть нам первое наименьшее значение. И как раз для того, чтобы автоматически вычислять это значение и была вставлена формула СТРОКА()-1 . Мы изначально вставили формулу во вторую строку Экселя, поэтому она выдаст единицу, а значит функция НАИМЕНЬШИЙ выдаст первое наименьшее значение, которое будет равно 5.

Соответственно, функция ИНДЕКС выдаст значение, находящееся в пятой строке столбца А, а это и есть имя сотрудника с максимальным возрастом:

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

Читать еще:  Как печатать таблицы в excel

Во-первых, в изначальной формуле использовались относительные ссылки и при автозаполнении это проявилось, то есть диапазоны «съехали».

Во-вторых, функция выводит сообщение #ЧИСЛО! из-за особенностей вычислений. Давайте разберемся в этой ситуации.

Во-первых, изменим ссылки на абсолютные с помощью клавиши F4 . Для этого при редактировании формулы устанавливаем текстовый курсор в ссылку и нажимаем F4 .

Не забудем в конце нажать сочетание Ctrl+Shift+Enter , чтобы сделать формулу формулой массива.

Теперь снова автозаполнением протянем формулу на весь диапазон и проанализируем вычисление во второй строке. На определенном этапе в функции НАИМЕНЬШИЙ мы будем искать второе наименьшее значение в диапазоне:

Но в диапазоне есть только одна цифра и именно поэтому появляется ошибка #ЧИСЛО! , поскольку формула возвращает недопустимое значение.

Чтобы избавиться от этой ошибки воспользуемся функцией ЕСЛИОШИБКА . Она работает следующим образом — если вычисление по формуле проходит без ошибок, то возвращается вычисленное значение, а если возникает ошибка, то функция вернет значение, которое мы сами укажем. То есть мы эту функцию пишем в самом начале формулы и затем добавляем еще одно условие — двойные кавычки. Это означает, что если вычисления приведут к ошибке, то в ячейке ничего не отобразится.

Делаем формулу формулой массива с помощью сочетания клавиш и вновь протягиваем ее по диапазону. Ошибки исчезли.

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

С моей точки зрения, наиболее сложный для понимания элемент формулы — это функция НАИМЕНЬШИЙ и вычисление аргумента k . Поэтому предлагаю посмотреть видео на эту тему, в котором более детально изложен материал:

Функции Excel ЕСЛИ (IF) и ЕСЛИМН (IFS) для нескольких условий

Логическая функция ЕСЛИ в Экселе – одна из самых востребованных. Она возвращает результат (значение или другую формулу) в зависимости от условия.

Функция ЕСЛИ в Excel

Функция имеет следующий синтаксис.

ЕСЛИ(лог_выражение; значение_если_истина; [значение_если_ложь])

лог_выражение – это проверяемое условие. Например, A2 30) не выполняется и возвращается альтернативное значение, указанное в третьем поле. В этом вся суть функции ЕСЛИ. Протягивая расчет вниз, получаем результат по каждому товару.

Однако это был демонстрационный пример. Чаще формулу Эксель ЕСЛИ используют для более сложных проверок. Допустим, есть средненедельные продажи товаров и их остатки на текущий момент. Закупщику нужно сделать прогноз остатков через 2 недели. Для этого нужно от текущих запасов отнять удвоенные средненедельные продажи.

Пока все логично, но смущают минусы. Разве бывают отрицательные остатки? Нет, конечно. Запасы не могут быть ниже нуля. Чтобы прогноз был корректным, нужно отрицательные значения заменить нулями. Здесь отлично поможет формула ЕСЛИ. Она будет проверять полученное по прогнозу значение и если оно окажется меньше нуля, то принудительно выдаст ответ 0, в противном случае — результат расчета, т.е. некоторое положительное число. В общем, та же логика, только вместо значений используем формулу в качестве условия.

В прогнозе запасов больше нет отрицательных значений, что в целом очень неплохо.

Формулы Excel ЕСЛИ также активно используют в формулах массивов. Здесь мы не будем далеко углубляться. Заинтересованным рекомендую прочитать статью о том, как рассчитать максимальное и минимальное значение по условию. Правда, расчет в той статье более не актуален, т.к. в Excel 2016 появились функции МИНЕСЛИ и МАКСЕСЛИ. Но для примера очень полезно ознакомиться – пригодится в другой ситуации.

Формула ЕСЛИ в Excel – примеры нескольких условий

Довольно часто количество возможных условий не 2 (проверяемое и альтернативное), а 3, 4 и более. В этом случае также можно использовать функцию ЕСЛИ, но теперь ее придется вкладывать друг в друга, указывая все условия по очереди. Рассмотрим следующий пример.

Нескольким менеджерам по продажам нужно начислить премию в зависимости от выполнения плана продаж. Система мотивации следующая. Если план выполнен менее, чем на 90%, то премия не полагается, если от 90% до 95% — премия 10%, от 95% до 100% — премия 20% и если план перевыполнен, то 30%. Как видно здесь 4 варианта. Чтобы их указать в одной формуле потребуется следующая логическая структура. Если выполняется первое условие, то наступает первый вариант, в противном случае, если выполняется второе условие, то наступает второй вариант, в противном случае если… и т.д. Количество условий может быть довольно большим. В конце формулы указывается последний альтернативный вариант, для которого не выполняется ни одно из перечисленных ранее условий (как третье поле в обычной формуле ЕСЛИ). В итоге формула имеет следующий вид.

Комбинация функций ЕСЛИ работает так, что при выполнении какого-либо указанно условия следующие уже не проверяются. Поэтому важно их указать в правильной последовательности. Если бы мы начали проверку с B2 =1. Однако этого можно избежать, если в поле с условием написать ИСТИНА, указывая тем самым, что, если не выполняются ранее перечисленные условия, наступает ИСТИНА и возвращается последнее альтернативное значение.

Теперь вы знаете, как пользоваться функцией ЕСЛИ в Excel, а также ее более современным вариантом для множества условий ЕСЛИМН.

Ссылка на основную публикацию
ВсеИнструменты
Adblock
detector