Excel для Microsoft 365 Excel для Microsoft 365 для Mac Excel для Интернета Excel 2021 Excel 2021 для Mac Excel 2019 Excel 2019 для Mac Еще…Меньше
Функция МАКСЕСЛИ возвращает максимальное значение из заданных определенными условиями или критериями ячеек.
Синтаксис
МАКСЕСЛИ(макс_диапазон;диапазон_условия1;условие1;[диапазон_условия2;условие2];…)
Аргумент |
Описание |
---|---|
max_range |
Фактический диапазон ячеек, для которого определяется максимальное значение. |
criteria_range1 |
Набор ячеек, оцениваемых с помощью условия. |
условия1 |
Условие в виде числа, выражения или текста, определяющее ячейки, которые имеют максимальное значение. Такой же набор условий используется для функций МИНЕСЛИ, СУММЕСЛИМН и СРЗНАЧЕСЛИМН. |
диапазон_условия2, |
Дополнительные диапазоны и условия для них. Можно ввести до 126 пар диапазонов и условий. |
Примечания
-
Размер и форма аргументов макс_диапазон и диапазон_условияN должны быть одинаковыми. В противном случае эти функции вернут ошибку #ЗНАЧ!.
Примеры
Скопируйте данные примеров из приведенных ниже таблиц и вставьте их в ячейку A1 нового листа Excel. Чтобы отобразить результаты формул, выделите их и нажмите клавишу F2, а затем — клавишу ВВОД. При необходимости измените ширину столбцов, чтобы видеть все данные.
Пример 1
Оценка |
Вес |
---|---|
89 |
1 |
93 |
2 |
96 |
2 |
85 |
3 |
91 |
1 |
88 |
1 |
Формула |
Результат |
=МАКСЕСЛИ(A2:A7;B2:B7;1) |
91 В criteria_range1 ячейки B2, B6 и B7 соответствуют условиям 1. Из соответствующих ячеек в max_range ячейка A6 имеет максимальное значение. Поэтому результат — 91. |
Пример 2
Вес |
Оценка |
---|---|
10 |
b |
1 |
a |
100 |
a |
1 |
b |
1 |
a |
1 |
a |
Формула |
Результат |
=МАКСЕСЛИ(A2:A5;B3:B6;»a») |
10 Примечание: Диапазоны, заданные аргументами диапазон_условия и макс_диапазон, не параллельны, однако их форма и размер совпадают. В диапазоне диапазон_условия1 первая, вторая и четвертая ячейки соответствуют условию «a». Из соответствующих ячеек в диапазоне макс_диапазон ячейка A2 имеет максимальное значение. Поэтому результат равен 10. |
Пример 3
Вес |
Оценка |
Класс |
Уровень |
---|---|---|---|
10 |
b |
Бизнес |
100 |
1 |
a |
Техника |
100 |
100 |
a |
Бизнес |
200 |
1 |
b |
Техника |
300 |
1 |
a |
Техника |
100 |
50 |
b |
Бизнес |
400 |
Формула |
Результат |
||
= МАКСЕСЛИ(A2:A7;B2:B7;»b»;D2:D7;»>100″) |
50 В criteria_range1, B2, B5 и B7 соответствуют условиям «b». Из соответствующих ячеек в criteria_range2 ячейки D5 и D7 соответствуют условиям >100. Наконец, из соответствующих ячеек в max_range ячейка A7 имеет максимальное значение. Поэтому результат — 50. |
Пример 4
Вес |
Оценка |
Класс |
Уровень |
---|---|---|---|
10 |
b |
Бизнес |
8 |
1 |
a |
Техника |
8 |
100 |
a |
Бизнес |
8 |
11 |
b |
Техника |
0 |
1 |
a |
Техника |
8 |
12 |
b |
Бизнес |
0 |
Формула |
Результат |
||
=МАКСЕСЛИ(a2:a7;B2:B7;»b»;D2:D7;a8) |
12 Аргумент условие2 равен A8. Однако поскольку ячейка A8 пуста, значение аргумента считается равным нулю (0). Ячейки в диапазоне диапазон_условия2, соответствующие значению 0, — это D5 и D7. Наконец, из соответствующих ячеек в max_range ячейка A7 имеет максимальное значение. Поэтому результат — 12. |
Пример 5
Вес |
Оценка |
---|---|
10 |
b |
1 |
a |
100 |
a |
1 |
b |
1 |
a |
1 |
a |
Формула |
Результат |
=МАКСЕСЛИ(A2:A5;B2:C6;»a») |
#ЗНАЧ! Так как размер и форма max_range и criteria_range не одинаковы, возвращается #VALUE! ошибку #ЗНАЧ!. |
Пример 6
Вес |
Оценка |
Класс |
Уровень |
---|---|---|---|
10 |
b |
Бизнес |
100 |
1 |
a |
Техника |
100 |
100 |
a |
Бизнес |
200 |
1 |
b |
Техника |
300 |
1 |
a |
Техника |
100 |
1 |
a |
Бизнес |
400 |
Формула |
Результат |
||
= МАКСЕСЛИ(A2:A6;B2:B6;»a»;D2:D6;»>200″) |
0 Ячейки, соответствующие условию, отсутствуют. |
Дополнительные сведения
Вы всегда можете задать вопрос специалисту Excel Tech Community или попросить помощи в сообществе Answers community.
См. также
Функция МИНЕСЛИ
Функция СУММЕСЛИМН
Функция СРЗНАЧЕСЛИМН
Функция СЧЁТЕСЛИМН
Нужна дополнительная помощь?
Поиск минимального или максимального значения по условию
В Microsoft Excel давно есть в стандартном наборе функции СЧЁТЕСЛИ (COUNTIF), СУММЕСЛИ (SUMIF) и СРЗНАЧЕСЛИ (AVERAGEIF) и их аналоги, позволяющие искать количество, сумму и среднее в таблице по одному или нескольким условиям. Но что если нужно найти не сумму или среднее, а минимум или максимум по условию(ям)?
Предположим, нам нужно найти минимальную цену для каждого товара в базе данных по поставщикам:
Таким образом, условием будет наименование товара (бумага, карандаши, ручки), а диапазоном для выборки — столбец с ценами.
Для будущего удобства, конвертируем исходный диапазон с ценами в «умную таблицу». Для этого выделите его и выберите на вкладке Главная — Форматировать как таблицу (Home — Format as Table) или нажмите Ctrl+T. Наша «поумневшая» таблица автоматически получит имя Таблица1, а к столбцам можно будет, соответственно, обращаться по их именам, используя выражения типа Таблица1[Товар] или Таблица1[Цена]. При желании, стандартное имя Таблица1 можно подкорректировать на вкладке Конструктор (Design), которая появляется, если щелкнуть в любую ячейку нашей «умной» таблицы. Подробнее о таких таблицах и их скрытых возможностях можно почитать здесь.
Способ 1. Функции МИНЕСЛИ и МАКСЕСЛИ в Excel 2016
Начиная с версии Excel 2016 в наборе функции Microsoft Excel наконец появились функции, которые легко решают нашу задачу — это функции МИНЕСЛИ (MINIFS) и МАКСЕСЛИ (MAXIFS). Синтаксис этих функции очень похож на СУММЕСЛИМН (SUMIFS):
=МИНЕСЛИ(Диапазон_чисел; Диапазон_проверки1; Условие1; Диапазон_проверки2; Условие2 … )
где
- Диапазон_чисел — диапазон с числами, из которых выбирается минимальное или максимальное
- Диапазон_проверки — диапазон, который проверяется на выполнение условия
- Условие — критерий отбора
Например, в нашем случае:
Просто, красиво, изящно. Одна проблема — функции МИНЕСЛИ и МАКСЕСЛИ появились только начиная с 2016 версии Excel. Если у вас (или тех, кто будет потом работать с вашим файлом) более старые версии, то придется шаманить другими способами.
Способ 2. Формула массива
В английской версии это будет, соответственно =MIN(IF(Table1[Товар]=F4;Table1[Цена]))
Не забудьте после ввода этой формулы в первую зеленую ячейку G4 нажать не Enter, а Ctrl+Shift+Enter, чтобы ввести ее как формулу массива. Затем формулу можно скопировать на остальные товары в ячейки G5:G6.
Давайте разберем логику работы этой формулы поподробнее. Функция ЕСЛИ проверяет каждую ячейку массива из столбца Товар на предмет равенства текущему товару (Бумага). Если это так, то выдается соответствующее ему значение из столбца Цена. В противном случае – логическое значение ЛОЖЬ (FALSE).
Таким образом внешняя функция МИН (MIN) выбирает минимальное не из всех значений цен, а только из тех, где товар был Бумага, т.к. ЛОЖЬ функцией МИН игнорируется. При желании, можно выделить мышью всю функцию ЕСЛИ(…) в строке формул
… и нажать на клавиатуре F9, чтобы наглядно увидеть тот самый результирующий массив, из которого потом функция МИН и выбирает минимальное значение:
Способ 3. Функция баз данных ДМИН
Этот вариант использует малоизвестную (и многими, к сожалению, недооцененную) функцию ДМИН (DMIN) из категории Работа с базой данных (Database) и требует небольшого изменения результирующей таблицы:
Как видите, зеленые ячейки с результатами транспонированы из столбца в строку и над ними добавлена мини-таблица (F4:H5) с условиями. Логика работы этой функции следующая:
- База_данных — вся наша таблица вместе с заголовками.
- Поле — название столбца из шапки таблицы, из которого выбирается минимальное значение.
- Критерий — таблица с условиями отбора, состоящая (минимально) из двух ячеек: названия столбца, по которому идет проверка (Товар) и критерия (Бумага, Карандаши, Ручки).
Это обычная формула (не формула массива), т.е. можно вводить и использовать ее привычным образом. Кроме того, в той же категории можно найти функции БДСУММ (DSUM), ДМАКС (DMAX), БСЧЁТ (DCOUNT), которые используются совершенно аналогично, но умеют находить не только минимум, но и сумму, максимум и количество значений по условию.
Способ 4. Сводная таблица
Если в исходной таблице очень много строк, но данные меняются не часто, то удобнее будет использовать сводную таблицу, т.к. формула массива и функция ДМИН могут сильно тормозить Excel.
Установите активную ячейку в любое место нашей умной таблицы и выберите на вкладке Вставка — Сводная таблица (Insert — Pivot Table). В появившемся окне нажмите ОК:
В конструкторе сводной таблицы перетащите поле Товар в область строк, а Цену в область значений. Чтобы заставить сводную вычислять не сумму (или количество), а минимум щелкните правой кнопкой мыши по любому числу и выберите в контекстном меню команду Итоги по — Минимум:
Вытаскивать данные из сводной в дальнейшие расчеты теперь можно с помощью функции ПОЛУЧИТЬ.ДАННЫЕ.СВОДНОЙ.ТАБЛИЦЫ (GET.PIVOT.DATA), которую мы подробно разбирали ранее:
Ссылки по теме
- Зачем нужна функция ПОЛУЧИТЬ.ДАННЫЕ.СВОДНОЙ.ТАБЛИЦЫ
- Выборочное вычисление суммы, среднего и т.д. по одному или нескольким критериям
- Что такое «умные таблицы» в Excel и как с ними работать
Подсчет максимального и минимального значения выполняется известными функциями МАКС и МИН. Бывает, что вычисления нужно произвести по группам или в зависимости от условия, как в СУММЕСЛИ.
Долгое время в Excel не было аналога СУММЕСЛИ или СРЗНАЧЕСЛИ для расчета максимального и минимального значения, поэтому использовали формулу массивов.
Пусть имеются данные
Нужно подсчитать максимальное значение в указанной группе. Название группы (критерий) введем в отдельную ячейку (D2). Пусть для начала это будет группа Б. Рядом введем следующую формулу:
=МАКС(ЕСЛИ(A2:A13=D2;B2:B13))
Это формула массивов, поэтому ввести ее нужно комбинацией Ctrl + Shift + Enter.
Теперь, меняя название группы, можно без всяких фильтров и сводных таблиц видеть максимальное значение внутри этой группы.
Как это работает? Очень просто. Первым делом нужно указать диапазон, который будет использоваться в качестве аргумента функции МАКС, то есть только те ячейки, которые соответствуют указанной группе. Так как мы заранее позаботились об удобстве использования функции, то название группы указали не внутри формулы, а в отдельной ячейке (гораздо легче менять группу). Тогда формула для нужного диапазона выглядит так.
ЕСЛИ(A2:A13=D2;B2:B13)
Указанное выражение отбирает только те значения, для которых название группы совпадает с условием в ячейке D2. Вот, как это видит Excel
На следующем этапе укажем функцию МАКС, аргументом которой выступает полученный выше массив. Excel воспринимает примерно так.
Видно, что максимальное значение внутри массива равно 31. Его и мы и увидим в ячейке с формулой. Нужно только не забыть итоговую функцию ввести комбинацией клавиш Ctrl + Shift + Enter, иначе ничего не получится. В строке формул формула массива отображается внутри фигурных скобок. Добавляются сами, специально дорисовывать не нужно.
Если функцию МАКС заменить на МИН, то по указанному условию (названию группы) будет выдаваться минимальное значение.
Функции Excel 2016 МАКСЕСЛИ (MAXIFS) и МИНЕСЛИ (MINIFS)
В MS Excel добавили новые статистические функции — МАКСЕСЛИ и МИНЕСЛИ. Обе функции имеют возможность учитывать несколько условий и некоторое время в их названиях в конце были буквы -МН. Потом убрали, хотя в скриншотах ниже используется вариант названий с -МН.
Есть ряд значений, каждое из которых входит в некоторую группу. Нужно рассчитать максимальное значение по группе А. Используем формулу МАКСЕСЛИ.
Все очень просто. Как и у СУММЕСЛИМН вначале указываем диапазон, где находится искомое максимальное значение (колонка В), затем диапазон с критериями (колонка А) и далее сам критерий (в ячейке D2). Можно указать сразу несколько условий. Таким же способом легко рассчитать минимальное значение по условию. Найдем, к примеру, минимум внутри группы Б.
Ниже показан
ролик, как рассчитать максимальное и минимальное значение по условию.
Поделиться в социальных сетях:
В статье показано несколько различных способов получить максимальное значение в Excel на основе одного или нескольких указанных вами условий.
В нашем предыдущем руководстве мы рассмотрели распространенное использование функции MAX, которая предназначена для возврата наибольшего числа в наборе данных. Однако в некоторых ситуациях вам может потребоваться углубиться в свои данные, чтобы найти максимальное значение на основе определенных критериев. Это можно сделать с помощью нескольких различных формул, и в этой статье объясняются все возможные способы.
До недавнего времени в Microsoft Excel не было встроенной функции МАКС. ЕСЛИ для получения максимального значения в зависимости от условий. С введением MAXIFS в Excel 2019 мы можем легко выполнять условное максимальное значение.
В Excel 2016 и более ранних версиях вам все равно придется создавать собственную формулу массива, комбинируя функцию MAX с оператором IF:
{=МАКС(ЕСЛИ(критерии_диапазонзнак равнокритерии, максимальный_диапазон))}
Чтобы увидеть, как эта общая формула MAX IF работает с реальными данными, рассмотрим следующий пример. Предположим, у вас есть таблица с результатами прыжков в длину нескольких учеников. В таблицу включены данные по трем раундам, и вы ищете лучший результат конкретного спортсмена, скажем Якова. С именами учащихся в A2:A10 и расстояниями в C2:C10 формула принимает следующий вид:
=МАКС(ЕСЛИ(A2:A10=»Иаков», C2:C10))
Помните, что формулу массива всегда нужно вводить, одновременно нажимая клавиши Ctrl + Shift + Enter. В результате он автоматически обрамляется фигурными скобками, как показано на скриншоте ниже (набор фигурных скобок вручную не работает!).
В реальных рабочих листах критерий удобнее вводить в какую-то ячейку, чтобы можно было легко изменить условие, не меняя формулу. Итак, набираем нужное имя в F1 и получаем следующий результат:
=МАКС(ЕСЛИ(A2:A10=F1, C2:C10))
Как работает эта формула
В логическом тесте функции ЕСЛИ мы сравниваем список имен (A2:A10) с целевым именем (F1). Результатом этой операции является массив значений ИСТИНА и ЛОЖЬ, где значения ИСТИНА представляют имена, совпадающие с целевым именем (Джейкоб):
{ЛОЖЬ; ЛОЖЬ; ЛОЖЬ; ИСТИНА; ИСТИНА; ИСТИНА; ЛОЖЬ; ЛОЖЬ; ЛОЖЬ}
Для значение_ если_истина аргумент, мы предоставляем результаты длинного перехода (C2:C10), поэтому, если логический тест оценивается как TRUE, возвращается соответствующее число из столбца C. значение_ если_ложь аргумент опущен, то есть будет иметь значение FALSE, если условие не выполняется:
{ЛОЖЬ;ЛОЖЬ;ЛОЖЬ;5.48;5.42;5.57;ЛОЖЬ;ЛОЖЬ;ЛОЖЬ}
Этот массив передается функции MAX, которая возвращает максимальное число, игнорируя значения FALSE.
Кончик. Чтобы просмотреть внутренние массивы, описанные выше, выберите соответствующую часть формулы на листе и нажмите клавишу F9. Чтобы выйти из режима оценки формулы, нажмите клавишу Esc.
Формула MAX IF с несколькими критериями
В ситуации, когда вам нужно найти максимальное значение на основе более чем одного условия, вы можете:
Используйте вложенные операторы IF, чтобы включить дополнительные критерии:
{=МАКС(ЕСЛИ(критерии_диапазон1знак равнокритерии1ЕСЛИ(критерии_диапазон2знак равнокритерии2, максимальный_диапазон)))}
Или обработайте несколько критериев, используя операцию умножения:
{=МАКС(ЕСЛИ((критерии_диапазон1знак равнокритерии1) * (критерии_диапазон2знак равнокритерии2), максимальный_диапазон))}
Допустим, у вас есть результаты юношей и девушек в одной таблице и вы хотите найти самый длинный прыжок среди девушек в 3 туре. Для этого вводим первый критерий (женский) в G1, второй критерий (3) в G2 и используйте следующие формулы для определения максимального значения:
=МАКС(ЕСЛИ(B2:B16=G1, ЕСЛИ(C2:C16=G2, D2:D16)))
=МАКС(ЕСЛИ((B2:B16=G1)*(C2:C16=G2), D2:D16))
Поскольку обе формулы являются формулами массива, не забудьте нажать Ctrl + Shift + Enter, чтобы заполнить их правильно.
Как показано на снимке экрана ниже, формулы дают одинаковый результат, поэтому какую из них использовать, зависит от ваших личных предпочтений. Для меня формулу с булевой логикой легче читать и строить — она позволяет добавлять сколько угодно условий без вложения дополнительных функций ЕСЛИ.
Как работают эти формулы
Первая формула использует две вложенные функции ЕСЛИ для оценки двух критериев. В логической проверке первого оператора IF мы сравниваем значения в столбце «Пол» (B2:B16) с критерием в G1 («Женский»). Результатом является массив значений TRUE и FALSE, где TRUE представляет данные, соответствующие критерию:
{ ЛОЖНЫЙ; ЛОЖНЫЙ; ЛОЖНЫЙ; УГРОЖАТЬ; УГРОЖАТЬ; УГРОЖАТЬ; ЛОЖНЫЙ; ЛОЖНЫЙ; ЛОЖНЫЙ; ЛОЖНЫЙ; ЛОЖНЫЙ; ЛОЖНЫЙ; УГРОЖАТЬ; УГРОЖАТЬ; УГРОЖАТЬ}
Аналогичным образом вторая функция ЕСЛИ проверяет значения в столбце округления (C2:C16) на соответствие критерию в G2.
Для значение_если_истина аргумент во втором операторе IF, мы предоставляем результаты прыжка в длину (D2:D16), и таким образом мы получаем элементы, которые имеют TRUE в первых двух массивах в соответствующих позициях (т. е. элементы, где пол «женский» и круглые равно 3):
{ЛОЖНЫЙ; ЛОЖНЫЙ; ЛОЖНЫЙ; ЛОЖНЫЙ; ЛОЖНЫЙ; 4,63; ЛОЖНЫЙ; ЛОЖНЫЙ; ЛОЖНЫЙ; ЛОЖНЫЙ; ЛОЖНЫЙ; ЛОЖНЫЙ; ЛОЖНЫЙ; ЛОЖНЫЙ; 4.52}
Этот последний массив передается функции MAX, и она возвращает наибольшее число.
Вторая формула оценивает одни и те же условия в рамках одного логического теста, а операция умножения работает как оператор И:
Когда значения TRUE и FALSE используются в любой арифметической операции, они преобразуются в 1 и 0 соответственно. А поскольку умножение на 0 всегда дает ноль, результирующий массив имеет 1 только тогда, когда все условия ИСТИННЫ. Этот массив оценивается в логической проверке функции ЕСЛИ, которая возвращает расстояния, соответствующие элементам 1 (ИСТИНА).
МАКС. ЕСЛИ без массива
Многие пользователи Excel, в том числе и я, предвзято относятся к формулам массивов и стараются по возможности избавиться от них. К счастью, в Microsoft Excel есть несколько функций, которые изначально обрабатывают массивы, и мы можем использовать одну из таких функций, а именно СУММПРОИЗВ, как своего рода «оболочку» вокруг MAX.
Общая формула MAX IF без массива выглядит следующим образом:
=СУММПРОИЗВ(МАКС((критерии_диапазон1знак равнокритерии1) * (критерии_диапазон2знак равнокритерии2) * максимальный_диапазон))
Естественно, при необходимости вы можете добавить больше пар диапазон/критерий.
Чтобы увидеть формулу в действии, мы будем использовать данные из предыдущего примера. Цель состоит в том, чтобы получить максимальный прыжок спортсменки в раунде 3:
=СУММПРОИЗВ(МАКС(((B2:B16=G1) * (C2:C16=G2) * (D2:D16))))
Эта формула заменяется обычным нажатием клавиши Enter и возвращает тот же результат, что и формула массива MAX IF:
Присмотревшись к приведенному выше снимку экрана, вы можете заметить, что недопустимые переходы, отмеченные знаком «x» в предыдущих примерах, теперь имеют 0 значений в строках 3, 11 и 15, и в следующем разделе объясняется, почему.
Как работает эта формула
Как и в случае с формулой МАКС. ЕСЛИ, мы оцениваем два критерия, сравнивая каждое значение в столбцах «Пол» (B2:B16) и «Округление» (C2:C16) с критериями в ячейках G1 и G2. Результатом являются два массива значений TRUE и FALSE. Умножение элементов массивов в одинаковых позициях преобразует ИСТИНА и ЛОЖЬ в 1 и 0 соответственно, где 1 представляет элементы, соответствующие обоим критериям. Третий умноженный массив содержит результаты прыжков в длину (D2:D16). И поскольку умножение на 0 дает ноль, выживают только элементы, имеющие 1 (ИСТИНА) в соответствующих позициях:
{0; 0; 0; 0; 0; 4,63; 0; 0; 0; 0; 0; 0; 0; 0; 4.52}
В случае максимальный_диапазон содержит любое текстовое значение, операция умножения возвращает ошибку #ЗНАЧ, из-за которой вся формула не работает.
Функция MAX берет его отсюда и возвращает наибольшее число, удовлетворяющее заданным условиям. Результирующий массив, состоящий из одного элемента {4.63}, поступает в функцию СУММПРОИЗВ и выводит максимальное число в ячейке.
Примечание. Из-за своей специфической логики формула работает со следующими оговорками:
- Диапазон, в котором вы ищете наибольшее значение, должен содержать только числа. Если есть какие-либо текстовые значения, #VALUE! возвращается ошибка.
- Формула не может оценить условие «не равно нулю» в отрицательном наборе данных. Чтобы найти максимальное значение без учета нулей, используйте либо формулу МАКС. ЕСЛИ, либо функцию МАКС.
Формула Excel MAX IF с логикой ИЛИ
Чтобы найти максимальное значение при выполнении любого из указанных условий, используйте уже знакомую формулу массива МАКС ЕСЛИ с булевой логикой, но сложите условия, а не перемножайте их.
{=МАКС(ЕСЛИ((критерии_диапазон1знак равнокритерии1) + (критерии_диапазон2знак равнокритерии2), максимальный_диапазон))}
Кроме того, вы можете использовать следующую формулу без массива:
=СУММПРОИЗВ(МАКС(((критерии_диапазон1знак равнокритерии1) + (критерии_диапазон2знак равнокритерии2)) * максимальный_диапазон))
Для примера вычислим лучший результат в раундах 2 и 3. Обратите внимание, что в языке Excel задача формулируется иначе: вернуть максимальное значение, если раунд либо 2, либо 3.
С раундами, перечисленными в B2:B10, результатами в C2:C10 и критериями в F1 и H1, формула выглядит следующим образом:
=МАКС(ЕСЛИ((B2:B10=F1) + (B2:B10=H1), C2:C10))
Введите формулу, нажав комбинацию клавиш Ctrl + Shift + Enter, и вы получите такой результат:
Максимальное значение с теми же условиями также можно найти с помощью этой формулы без массива:
=СУММПРОИЗВ(МАКС(((B2:B10=F1) + (B2:B10=H1)) * C2:C10))
Однако в этом случае нам нужно заменить все значения «x» в столбце C нулями, потому что СУММПРОИЗВ МАКС работает только с числовыми данными:
Как работают эти формулы
Формула массива работает точно так же, как МАКС. ЕСЛИ с логикой И за исключением того, что вы соединяете критерии, используя операцию сложения вместо умножения. В формулах массива сложение работает как оператор ИЛИ:
Сложение двух массивов ИСТИНА и ЛОЖЬ (которые получаются в результате проверки значений в B2:B10 по критериям в F1 и H1) дает массив из 1 и 0, где 1 представляет элементы, для которых любое условие является ИСТИННЫМ, а 0 представляет элементы. для которого оба условия ЛОЖНЫ. В результате функция ЕСЛИ «сохраняет» все элементы в C2:C10 (значение_если_истина), для которого любое условие ИСТИННО (1); остальные элементы заменяются на FALSE, потому что значение_если_ложь аргумент не указан.
Формула без массива работает аналогичным образом. Разница в том, что вместо логического теста IF вы умножаете элементы массива 1 и 0 на элементы массива результатов прыжка в длину (C2:C10) в соответствующих позициях. Это аннулирует элементы, которые не соответствуют ни одному условию (имеют 0 в первом массиве), и сохраняет элементы, которые соответствуют одному из условий (имеют 1 в первом массиве).
MAXIFS — простой способ найти максимальное значение с условиями
Пользователи Excel 2019, 2021 и Excel 365 избавлены от необходимости приручать массивы для создания собственной формулы MAX IF. Эти версии Excel предоставляют долгожданную функцию MAXIFS, которая упрощает поиск наибольшего значения в условиях детской игры.
В первом аргументе MAXIFS вы вводите диапазон, в котором должно быть найдено максимальное значение (в нашем случае D2:D16), а в последующих аргументах вы можете ввести до 126 пар диапазон/критерий. Например:
=МАКСЕСЛИ(D2:D16, B2:B16, G1, C2:C16, G2)
Как показано на снимке экрана ниже, у этой простой формулы нет проблем с обработкой диапазона, содержащего как числовые, так и текстовые значения:
Подробную информацию об этой функции см. в разделе Функция MAXIFS в Excel с примерами формул.
Вот как вы можете найти максимальное значение с условиями в Excel. Я благодарю вас за чтение и надеюсь увидеть вас в нашем блоге на следующей неделе!
Практическая рабочая тетрадь для скачивания
Примеры формулы Excel MAX IF (файл .xlsx)
Вас также могут заинтересовать
Skip to content
В этой статье объясняется функция МАКС с множеством примеров формул, которые показывают, как найти наибольшее значение в Excel и выделить наибольшее число на листе.
МАКС — одна из самых простых и простых в использовании функций Excel. Тем не менее, у нее есть несколько хитростей, которые дадут вам большие возможности. Скажите, как вы используете функцию МАКС с условиями? Или знаете, как извлечь абсолютное наибольшее значение? Мы предложим несколько решений для этих и других аналогичных задач.
- Функция МАКС — основные сведения
- Найти максимальное в группе чисел
- Вычисляем максимум в несмежных диапазонах
- Как получить максимальную (последнюю) дату
- Максимальное значение с условиями
- Наибольшее число без учёта нулей
- Как найти максимальное число игнорируя ошибки
- Определяем абсолютное максимальное значение
- Максимум применительно к тексту
- Вычисление наибольшей разницы
- Выводим адрес ячейки с максимальным значением
- Как выделить цветом самое большое число
- Почему не получается?
Функция МАКС
Функция МАКС в Excel возвращает наибольшее значение в указанном вами наборе данных.
Синтаксис у неё следующий:
МАКС(число1; [число2];…)
Где число может быть представлено числовым значением, массивом, именованным диапазоном, ссылкой на ячейку или диапазоном, содержащим числа.
Число1 является обязательным, число2 и последующие аргументы необязательны.
Чтобы создать самую простую формулу, чтобы выбрать максимальное значение в таблице Excel, вы можете вводить числа непосредственно в список аргументов, например:
=МАКС(1; 2; 3)
На практике это – очень редкий случай. По большей части вы будете иметь дело с диапазонами и ячейками.
Самый быстрый способ найти наибольшее значение в диапазоне, – это:
- В ячейке введите = МАКС(
- Выберите диапазон чисел с помощью мыши.
- Введите закрывающую скобку.
- Жмём Enter для завершения.
Например, чтобы найти максимальное значение в диапазоне A1: A6, формула будет выглядеть следующим образом:
=МАКС(A1:A6)
Если ваши числа находятся в непрерывном диапазоне (как в этом примере), вы можете заставить Excel автоматически создать формулу МАКС. Вот как:
- Выделите ячейки со своими числами.
- На вкладке «Главная» в группе «Форматы» нажмите «Автосумма» и выберите «Максимум» из раскрывающегося списка.
5 фактов, которые нужно знать о функции МАКС –
- В текущих версиях Excel она может обрабатывать до 255 аргументов.
- Если аргументы не содержат ни одного числа, возвращается ноль.
- Если аргументы содержат одно или несколько значений ошибки, возвращается ошибка.
- Пустые ячейки игнорируются.
- Обрабатываются логические значения и текстовые представления чисел, предоставленные непосредственно в списке аргументов (ИСТИНА приравнивается к 1, ЛОЖЬ – к 0). Если используется ссылка на ячейку с логическим или текстовым значением, то они игнорируются.
Как найти в Excel наибольшее число – примеры.
Ниже мы покажем несколько стандартных вариантов использования функции МАКС.
Во многих случаях существует несколько различных решений для одной и той же задачи, поэтому я рекомендую вам протестировать все варианты, чтобы выбрать наиболее подходящий.
Как выбрать максимальное значение в группе чисел.
Чтобы в Excel извлечь наибольшее число в группе чисел, передайте эту группу функции МАКС в качестве ссылки на диапазон. Диапазон может содержать любое количество строк и столбцов. Например, чтобы получить максимальное значение из C2: E7, используйте эту простую формулу:
=МАКС(C2:E7)
Предположим, у нас есть сведения об учениках с их оценкой, но некоторые из значений оценки являются логическими, текстовыми, а некоторые пока вовсе не имеют оценки.
Применим функцию:
= МАКС(B2:B10)
Как видите, игнорируются ячейки с текстом, а также пустые, логические значения приравниваются к нулю, а затем вычисляется максимальное число, как показано в таблице Excel выше.
Наибольшее значение в несмежных ячейках или диапазонах Excel
Чтобы осуществить поиск в несмежных ячейках и диапазонах, необходимо включить в формулу ссылку на каждый отдельный адрес. Рассмотрим пошагово:
- Начните вводить функцию МАКС в ячейку.
- После того, как вы ввели открывающую скобку, нажмите и удерживайте Ctrl и выберите мышкой нужные ячейки и диапазоны.
- Отпустите
Ctrl
и введите закрывающую круглую скобку. - Нажмите
Enter
.
Вы получите формулу максимального числа в Excel, подобную этому:
=МАКС(C2:E2;C7:E7)
Как получить наибольшую (последнюю) дату в Excel
Во внутренней системе Excel даты – это не что иное, как порядковые номера дней, поэтому функция МАКС обрабатывает их без проблем.
Например, чтобы найти последнюю дату доставки из C2: C7, запишите обычную формулу, которую вы использовали бы для чисел:
=МАКС(C2:C7)
Поскольку дата – это также число, всё работает замечательно.
Максимальное значение с условиями.
Довольно часто случается, что из большого объёма данных Excel нужно выбрать максимальное значение из какой-то его части. К примеру, найти самую большую партию какого-то определённого товара в огромном списке продаж. Или же найти наивысшую оценку по какому-то предмету среди большого набора данных оценок, набранных учащимися определенного класса по нескольким предметам в школе.
Если вы хотите получить максимальное значение Excel с учётом каких-то условий, то вы можете выбрать из нескольких предложенных ниже формул. Чтобы убедиться, что все они возвращают одинаковый результат, мы протестируем их на одном и том же наборе данных.
Задача: мы хотим найти самую большую продажу для определенного товара, указанного в F1.
МАКС + ЕСЛИ
Если вы ищете решение, которое работает во всех версиях Excel, используйте функцию ЕСЛИ для проверки условия, а затем передайте полученный массив в функцию:
=МАКС(ЕСЛИ(B2:B15=F1; C2:C15))
Чтобы это работало, необходимо нажать Ctrl + Shift + Enter
одновременно, чтобы ввести как формулу массива. Если все сделано правильно, Excel заключит ваше выражение в {фигурные скобки}, что является визуальным указанием на формулу массива.
Также можно оценить несколько условий одновременно, о чем мы поговорим далее.
МАКС + СУММПРОИЗВ
Если вам не нравится использовать формулы массива в ваших листах, объедините МАКС с функцией СУММПРОИЗВ, которая умеет работать с массивами:
=СУММПРОИЗВ(МАКС((B2:B15=F1)*(C2:C15)))
МАКСЕСЛИ
В Excel 2019 и Office 365 есть специальная функция МАКСЕСЛИ, которая предназначена для поиска наибольшего значения по 126 критериям.
В нашем случае используется только одно условие, поэтому формула очень проста:
=МАКСЕСЛИ(C2:C15;B2:B15;F1)
На приведенном ниже скриншоте показаны все 3 формулы в действии:
Выбираем максимальное значение в Excel без учета нулей
Фактически, это разновидность условного МАКС, рассмотренного в предыдущем примере. Чтобы исключить нули, используйте логический оператор «не равно» и поместите выражение «<> 0» либо в критерий функции МАКСЕСЛИ, либо в конструкцию МАКС + ЕСЛИ.
Как вы понимаете, проверка этого условия имеет смысл только в случае наличия отрицательных чисел. Для положительных чисел эта проверка излишняя, потому что любое положительное число больше нуля.
Чтобы попробовать, давайте найдем самую маленькую скидку в диапазоне C2:C7. Поскольку все скидки представлены отрицательными числами, наименьшая скидка фактически является наибольшим значением.
Обязательно нажмите Ctrl + Shift + Enter
, чтобы правильно заполнить эту формулу массива:
=МАКС(ЕСЛИ(C2:C7<>0; C2:C7))
А это обычная формула –
=МАКСЕСЛИ(C2:C7;C2:C7;»<>0″)
И вот что у нас получилось:
Как найти максимальное значение, игнорируя ошибки
Когда вы работаете с большим объемом данных, управляемых различными формулами, есть вероятность, что некоторые из них приведут к ошибкам. Соответственно, функция МАКС тоже вернет ошибку.
В качестве обходного пути можно использовать МАКС вместе с ЕОШИБКА. Учитывая, что вы ищете в диапазоне A1: B5, формула принимает следующую форму:
=МАКС(ЕСЛИ(ЕОШИБКА(A1:B6); «»; A1:B6))
Чтобы упростить формулу, используйте функцию ЕСЛИОШИБКА вместо комбинации ЕСЛИ + ЕОШИБКА. Это также сделает логику более очевидной — если есть ошибка в A1:B6, замените ее пустой строкой (»), а затем вычислите самое большое значение в диапазоне:
=МАКС(ЕСЛИОШИБКА(A1:B6; «»))
Неудобство состоит в том, что нужно не забывать нажимать Ctrl + Shift + Enter
, потому что это работает только как формула массива.
В Excel 2019 и Office 365 функция МАКСЕСЛИ может быть хорошим решением при условии, что ваш набор данных содержит хотя бы одно положительное число или нулевое значение:
=МАКСЕСЛИ(A1:B6;A1:B6;»>=0″)
Поскольку формула выполняет поиск максимального значения с условием «больше или равно 0», она не будет работать для набора данных, состоящего исключительно из отрицательных чисел.
Также идеально подходит функция АГРЕГАТ, которая может выполнять ряд операций и игнорировать значения ошибок:
=АГРЕГАТ(4;6;A1:B6)
Число 4 в первом аргументе предписывает выполнить поиск максимального числа, шестёрка во втором аргументе – это параметр «игнорировать ошибки», а A1: B6 — ваш целевой диапазон.
Все формулы возвращают одинаковый результат:
Как найти абсолютное наибольшее значение в Excel
При работе с диапазоном положительных и отрицательных чисел иногда может потребоваться найти максимальное абсолютное значение независимо от знака.
Первая идея, которая приходит в голову, — получить абсолютные значения всех чисел в диапазоне с помощью функции ABS и передать их в МАКС:
{= МАКС(ABS( диапазон ))}
Это формула массива, поэтому не забудьте подтвердить ее с помощью Ctrl + Shift + Enter
. Еще одно предостережение: он работает только с числами и приводит к ошибке в случае нечисловых данных.
Не нравится это решение? Тогда давайте построим что-нибудь более жизнеспособное
Что, если мы найдем минимальное значение, изменим или проигнорируем его знак, а затем вычислим вместе со всеми другими числами? Да, это будет отлично работать как обычная формула. В качестве дополнительного бонуса это отлично обрабатывает текстовые записи и ошибки.
С исходными данными в A1: B5 расчёты выглядят следующим образом.
Формула массива (заполняется с помощью Ctrl + Shift + Enter
):
=МАКС(ABS(A1:B5))
Обычная формула (заполняется клавишей Enter):
=МАКС(МАКС(A1:B5); -МИН(A1:B5))
или же
=МАКС(МАКС(A1:B5); ABS(МИН(A1:B5)))
На скриншоте ниже показаны результаты:
Вернуть максимальное абсолютное значение с сохранением знака
В некоторых ситуациях может потребоваться найти наибольшее абсолютное значение в таблице Excel, но вернуть число с исходным знаком, а не его абсолютное значение.
Предполагая, что числа находятся в ячейках A1: B5, вот выражение, которое следует использовать:
=ЕСЛИ(ABS(МАКС(A1:B5))>ABS(МИН(A1:B5)); МАКС(A1:B5);МИН(A1:B5))
Сложная на первый взгляд логика довольно проста. Сначала вы находите наибольшее и наименьшее числа в диапазоне и сравниваете их абсолютные значения. Если абсолютное (без учёта знака) максимальное значение больше абсолютного минимального значения, возвращается это наиболшее число, иначе – наименьшее число.
Поскольку формула возвращает исходное, а не абсолютное значение, информация о знаке сохраняется (см. скриншот выше).
Максимальное значение применительно к тексту.
Предположим, у нас есть список имен, и нам нужно вычислить их максимальную длину, то есть найти наибольшее количество символов в ячейке Excel.
Здесь мы должны применить функцию ДЛСТР для вычисления длины имени.
=ДЛСТР(А2)
А затем применим функцию МАКС, чтобы узнать максимальную длину ФИО.
=МАКС(B2;B13)
А можно обойтись без дополнительного столбца и вычислить максимальную длину текстового значения в одной ячейке. Для этого нужно объединить эти формулы, вложив ДЛСТР в МАКС:
=МАКС(ДЛСТР(A2:A13))
Учтите, что это формула массива. Ведь можно работать не только с диапазоном, но и с массивом числовых значений, который формируется другой функцией.
Вычислить наибольшую разницу в сумме.
Предположим, нам нужно вычислить наибольшую разницу в сумме за любой смежный месяц для каждого товара. Или, выражаясь иначе, найти максимальное изменение продаж за месяц.
Ниже представлена таблица Excel с небольшой выборкой данных за 4 месяца.
Если решать проблему «в лоб», то можно использовать функцию ЕСЛИ со множеством условий:
=ЕСЛИ(И((МАКС(B2:C2)-МИН(B2:C2))>(МАКС(C2:D2)-МИН(C2:D2)), (МАКС(B2:C2)-МИН(B2:C2))>(МАКС(D2:E2)-МИН(D2:E2))), МАКС(B2:C2)-МИН(B2:C2), ЕСЛИ((МАКС(C2:D2)-МИН(C2:D2))>(МАКС(D2:E2)-МИН(D2:E2)), МАКС(C2:D2)-МИН(C2:D2),МАКС(D2:E2)-МИН(D2:E2)))
Но при помощи функции МАКС можно значительно упростить расчет и не пользоваться такой длинной и сложной конструкцией.
Используя функцию ABS, мы будем искать максимальное изменение вне зависимости от знака. Попробуйте заменить большую формулу этой:
=МАКС(ABS(B2-C2);ABS(C2-D2);ABS(D2-E2))
Как вы можете видеть в таблице ниже, этот вариант намного проще и возвращает те же результаты.
Как найти адрес ячейки Excel с максимальным числом.
Есть ли решение, которое сообщит адрес ячейки с наибольшим числом, а не само число? То есть, если A4 равно 9 и это значение является самым большим, как мне составить формулу, которая возвратит координаты A4 вместо 9?
Вы можете использовать функции ЯЧЕЙКА , ИНДЕКС и ПОИСКПОЗ в сочетании с функцией МАКС, чтобы вернуть адрес ячейки с наибольшим значением.
Например, если вы хотите найти ячейку с наивысшим значением в столбце от А1 до А7, вы можете использовать следующий расчёт:
=ЯЧЕЙКА(«адрес»;ИНДЕКС(A1:A7;ПОИСКПОЗ(МАКС(A1:A7);A1:A7;0)))
Получаем результат в виде абсолютной ссылки $А$4, которая указывает на самое большое число из этого диапазона.
Однако учтите, что это выражение работает только с одним столбцом.
А вот еще альтернативные варианты поиска адреса наибольшего числа по столбцу, из которых вы можете выбрать наиболее подходящий для себя:
Формула массива –
{=АДРЕС(ПОИСКПОЗ(МАКС(F1:F7);F1:F7;0);СТОЛБЕЦ(F1:F7);4)}
Обычная формула, в которой явным образом нужно указать столбец:
=»F»&ПОИСКПОЗ(МАКС(F1:F7);F1:F7;0)
Ещё одна формула массива –
{=ЯЧЕЙКА(«address»;ИНДЕКС(F2:F7;ПОИСКПОЗ(МАКС(F2:F7);F2:F7;0)))}
На скриншоте вы видите, что все они возвращают один и тот же адрес:
И ещё одна формула массива для вывода адреса, которая работает с диапазоном из нескольких строк и столбцов:
{=АДРЕС(МАКС(ЕСЛИ((C2:E7=МАКС(C2:E7));СТРОКА(C2:E7))); МАКС(ЕСЛИ((C2:E7=МАКС(C2:E7));СТОЛБЕЦ(C2:E7))))}
В данном случае, как видите, мы ищем адрес наибольшего числа в двумерном диапазоне C2:E7.
Напомню, что формула массива вводится с использованием комбинации клавиш Ctrl + Shift + Enter
.
Как выделить наибольшее значение в Excel
В ситуации, когда вы хотите определить самое большое число в исходном наборе данных, самый быстрый способ – выделить его с помощью условного форматирования Excel. Приведенные ниже примеры покажут вам два разных варианта действий.
Выделите максимальное число в диапазоне Excel
В Microsoft Excel есть встроенное правило для форматирования максимальных чисел в диапазоне, которое идеально соответствует нашим потребностям. Вот как можно применить его:
- Выберите диапазон чисел (в нашем случае C2: E8).
- На вкладке «Главная» в группе «Стили» щелкните «Условное форматирование»> «Новое правило».
- В диалоговом окне «Новое правило форматирования» выберите «Форматировать только первые или последние значения».
- На нижней панели выберите «первым» из раскрывающегося списка и введите 1 в поле рядом с ним (это означает, что вы хотите выделить только одну ячейку, содержащую наибольшее значение).
- Нажмите кнопку «Формат» и выберите стиль оформления.
- Дважды щелкните OK, чтобы закрыть оба окна.
Как выделить цветом максимальное число в каждой строке
Поскольку нет встроенного правила, чтобы выделить наибольшее значение из каждой строки таблицы Excel, вам придется настроить собственное на основе функции МАКС. Вот как:
- Выберите все строки, которые вы хотите проверить (C3:E8).
- Кликните Новое правило > Использовать формулу.
- В поле Форматировать значения, запишите:
=C3=МАКС($C3:$E3)
Где C3 — крайняя верхняя левая ячейка, а $C3:$E3 — координаты первой строки. Чтобы правило работало, обязательно зафиксируйте координаты столбца в диапазоне знаком $.
- Нажмите кнопку «Формат» и выберите нужный формат.
- Дважды щелкните ОК.
Кончик. Таким же образом вы можете выделить максимальное значение в каждом столбце. Шаги в точности такие же, за исключением того, что вы пишете условие для диапазона первого столбца и фиксируете координаты строки:
=C2=МАКС(C$2:C$7)
Дополнительные сведения см. в статье « Как создать правило условного форматирования на основе формул» .
Почему не получается найти наибольшее число?
МАКС — одна из самых простых в использовании функций Excel. Если вопреки всем ожиданиям она не работает, то, скорее всего, это одна из следующих проблем:
МАКС возвращает ноль
Если обычная формула МАКС возвращает 0, даже если в указанном диапазоне есть числа явно большие, скорее всего, эти числа отформатированы как текст.
Это особенно актуально, когда вы запускаете функцию МАКС для данных, получаемых другими формулами или же импортированных из других программ.
Вы можете проверить это с помощью функции ЕЧИСЛО, например:
=ЕЧИСЛО(A1)
Если приведенная выше формула возвращает ЛОЖЬ, то значение в A1 не является числовым. Это означает, что вы должны устранять неполадки с исходными данными, а не с формулой.
МАКС возвращает значение #Н/Д, #ЗНАЧ или другую ошибку.
Пожалуйста, внимательно проверьте указанные ячейки. Если какая-либо из указанных ячеек содержит ошибку, поиск максимума приведет к той же ошибке. Чтобы обойти это, посмотрите, как получить максимальное значение, игнорируя все ошибки .
Вот как можно найти максимальное значение в Excel. Благодарю вас за чтение!