Функция MAXIFS в Excel - поиск максимального значения по нескольким критериям

  • Поделись Этим
Michael Brown

В учебнике показано, как использовать функцию MAXIFS в Excel для получения максимального значения с условиями.

Традиционно, когда вам требовалось найти наибольшее значение с условиями в Excel, вы должны были построить собственную формулу MAX IF. Хотя для опытных пользователей это не является большой проблемой, для новичков это может представлять определенные трудности, поскольку, во-первых, вы должны помнить синтаксис формулы, а во-вторых, вы должны знать, как работать с формулами массивов. К счастью, Microsoft недавно представила новую формулу MAX IF.функция, которая позволяет нам делать условный максимум простым способом!

    Функция Excel MAXIFS

    Функция MAXIFS возвращает наибольшее числовое значение в указанном диапазоне на основе одного или нескольких критериев.

    Синтаксис функции MAXIFS следующий:

    MAXIFS(max_range, criteria_range1, criteria1, [criteria_range2, criteria2], ...)

    Где:

    • максимальный_диапазон (обязательно) - диапазон ячеек, в котором нужно найти максимальное значение.
    • Критерий_диапазона1 (требуется) - первый диапазон для оценки с помощью критерии1 .
    • Критерии1 - условие, которое будет использоваться для первого диапазона. Оно может быть представлено числом, текстом или выражением.
    • Критерий_диапазона2 / критерии2 , ...(необязательно) - дополнительные диапазоны и связанные с ними критерии. Поддерживается до 126 пар диапазон/критерий.

    Эта функция MAXIFS доступна в Excel 2019, Excel 2021 и Excel для Microsoft 365 на Windows и Mac.

    В качестве примера, давайте найдем самого высокого футболиста в нашей местной школе. Предположим, что рост учеников находится в ячейках D2:D11 (max_range), а спорт - в B2:B11 (criteria_range1), используйте слово "футбол" в качестве criteria1, и вы получите такую формулу:

    =MAXIFS(D2:D11, B2:B11, "футбол")

    Чтобы сделать формулу более универсальной, вы можете ввести целевой вид спорта в некоторую ячейку (например, G1) и включить ссылку на ячейку в формуле критерии1 аргумент:

    =MAXIFS(D2:D11, B2:B11, G1)

    Примечание. максимальный_диапазон и диапазон_критериев аргументы должны быть одинакового размера и формы, т.е. содержать одинаковое количество строк и столбцов, иначе возвращается ошибка #VALUE!

    Как использовать функцию MAXIFS в Excel - примеры формул

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

    Найти максимальное значение на основе нескольких критериев

    В первой части этого руководства мы создали формулу MAXIFS в ее простейшей форме для получения максимального значения на основе одного условия. Теперь мы рассмотрим этот пример дальше и оценим два различных критерия.

    Предположим, вы хотите найти самого высокого баскетболиста в младшей школе. Чтобы это сделать, определите следующие аргументы:

    • максимальный_диапазон - диапазон ячеек, содержащих высоты - D2:D11.
    • Критерий_диапазона1 - диапазон ячеек, содержащих виды спорта - B2:B11.
    • Критерии1 - "баскетбол", который вводится в ячейку G1.
    • Критерий_диапазона2 - диапазон ячеек, определяющих тип школы - C2:C11.
    • Критерии2 - "младший", который вводится в ячейку G2.

    Сложив аргументы вместе, мы получаем эти формулы:

    С "жестко закодированными" критериями:

    =MAXIFS(D2:D11, B2:B11, "баскетбол", C2:C11, "юниор")

    С критериями в заранее определенных ячейках:

    =MAXIFS(D2:D11, B2:B11, G1, C2:C11, G2)

    Обратите внимание, что функция MAXIFS в Excel является без учета регистра поэтому вам не нужно беспокоиться о регистре букв в ваших критериях.

    Если вы планируете использовать свою формулу в нескольких ячейках, обязательно зафиксируйте все диапазоны абсолютными ссылками на ячейки, как показано ниже:

    =MAXIFS($D$2:$D$11, $B$2:$B$11, G1, $C$2:$C$11, G2)

    Это обеспечит правильное копирование формулы в другие ячейки - ссылки критериев изменяются в зависимости от относительного положения ячейки, в которую копируется формула, а диапазоны остаются неизменными:

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

    =INDEX($A$2:$A$11, MATCH(MAXIFS($D$2:$D$11, $B$2:$B$11, G1, $C$2:$C$11, G2), $D$2:$D$11, 0))

    Формула говорит нам, что имя самого высокого баскетболиста в младшей школе - Лиам:

    Excel MAXIFS с логическими операторами

    В ситуации, когда вам нужно оценить числовые критерии, используйте логические операторы, такие как:

    • больше, чем (>)
    • меньше чем (<)
    • больше или равно (>=)
    • меньше или равно (<=)
    • не равно ()

    Оператор "равно" (=) в большинстве случаев можно не использовать.

    Обычно выбор оператора не представляет проблемы, самое сложное - построить критерии с правильным синтаксисом. Вот как это сделать:

    • Логический оператор, за которым следует число или текст, должен быть заключен в двойные кавычки, например, ">=14" или "running".
    • В случае ссылки на ячейку или другую функцию используйте кавычки для начала строки и амперсанд для конкатенации ссылки и завершения строки, например, ">"&B1 или "<"&TODAY().

    Чтобы посмотреть, как это работает на практике, давайте добавим в нашу таблицу-образец столбец Возраст (столбец С) и найдем максимальный рост среди мальчиков в возрасте от 13 до 14 лет. Это можно сделать с помощью следующих критериев:

    Критерии1: ">=13"

    Критерий2: "<=14"

    Поскольку мы сравниваем числа в одном и том же столбце, диапазон_критериев в обоих случаях одинаков (C2:C11):

    =MAXIFS(D2:D11, C2:C11, ">=13", C2:C11, "<=14")

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

    =MAXIFS(D2:D11, C2:C11, ">="&G1, C2:C11, "<="&H1)

    На скриншоте ниже показан результат:

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

    =MAXIFS(D2:D11, B2:B11, "волейбол")

    Или этот, где G1 - исключенный вид спорта:

    =MAXIFS(D2:D11, B2:B11, ""&G1)

    Формулы MAXIFS с символами подстановки (частичное совпадение)

    Чтобы оценить условие, содержащее определенный текст или символ, включите в критерии один из следующих символов подстановки:

    • Вопросительный знак (?) для соответствия любому одиночному символу.
    • Звездочка (*) для соответствия любой последовательности символов.

    Поскольку названия всех игровых видов спорта в нашем наборе данных заканчиваются словом "мяч", мы включаем это слово в критерии и используем звездочку для соответствия всем предыдущим символам:

    =MAXIFS(D2:D11, B2:B11, "*ball")

    Вы также можете набрать "ball" в некоторой ячейке, например, G1, и объединить символ подстановки со ссылкой на ячейку:

    =MAXIFS(D2:D11, B2:B11, "*"&G1)

    Результат будет выглядеть следующим образом:

    Получение максимального значения в диапазоне дат

    Поскольку даты хранятся как порядковые номера во внутренней системе Excel, вы работаете с критериями дат так же, как и с числами.

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

    При построении критериев важно предоставить даты в формате, понятном Excel:

    =MAXIFS(D2:D11, C2:C11, ">=1-Jan-2004", C2:C11, "<=31-Dec-2004")

    Или

    =MAXIFS(D2:D11, C2:C11, ">=1/1/2004", C2:C11, "<=12/31/2004")

    Чтобы избежать неправильного толкования, имеет смысл использовать функцию DATE:

    =MAXIFS(D2:D11, C2:C11, ">="&DATE(2004,1,1), C2:C11, "<="&DATE(2004,12,31))

    В данном примере мы введем целевой год в G1, а затем воспользуемся функцией DATE для ввода дат:

    =MAXIFS(D2:D11, C2:C11, ">="&DATE(G1,1,1), C2:C11, "<="&DATE(G1,12,31))

    Примечание. В отличие от чисел, даты должны быть заключены в кавычки, если они используются в критериях самостоятельно. Например:

    =MAXIFS(D2:D11, C2:C11, "10/5/2005")

    Найти максимальное значение на основе нескольких критериев с помощью логики ИЛИ

    Функция Excel MAXIFS предназначена для проверки условий с помощью логики AND - т.е. она обрабатывает только те числа в максимальный_диапазон для которых все критерии TRUE. Однако в некоторых ситуациях вам может понадобиться оценить условия с помощью логики OR - т.е. обработать все числа, для которых любой из указанных критериев TRUE.

    Предположим, вы хотите найти максимальный рост парней, которые играют либо в баскетбол, либо в футбол. Как бы вы это сделали? Использование "баскетбол" в качестве критерия1 и "футбол" в качестве критерия2 не сработает, потому что Excel будет считать, что оба критерия должны иметь значение TRUE.

    Решение состоит в том, чтобы сделать 2 отдельные формулы MAXIFS, по одной на каждый вид спорта, а затем использовать старую добрую функцию MAX для возврата большего числа:

    =MAX(MAXIFS(C2:C11, B2:B11, "баскетбол"), MAXIFS(C2:C11, B2:B11, "футбол"))

    На скриншоте ниже показана эта формула, но с критериями в предопределенных ячейках ввода, F1 и H1:

    Другой способ - использовать формулу MAX IF с логикой OR.

    7 вещей, которые нужно помнить об Excel MAXIFS

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

    1. Функция MAXIFS в Excel может получить наибольшее значение на основе один или многочисленные критерии .
    2. По умолчанию Excel MAXIFS работает с файлом Логика И , т.е. возвращает максимальное число, удовлетворяющее всем заданным условиям.
    3. Чтобы функция работала, диапазоны max и criteria должны иметь значения одинаковый размер и форма .
    4. Функция SUMIF представляет собой без учета регистра , т.е. не распознает регистр букв в текстовых критериях.
    5. При написании формулы MAXIFS для нескольких ячеек, помните, что необходимо блокировать диапазоны с абсолютными ссылками на ячейки, чтобы формула копировалась правильно.
    6. Разум синтаксис ваших критериев Вот основные правила:
      • При самостоятельном использовании текст и даты следует заключать в кавычки, а цифры и ссылки на ячейки - нет.
      • Когда число, дата или текст используются с логическим оператором, все выражение должно быть заключено в двойные кавычки, например ">=10"; ссылки на ячейки и другие функции должны объединяться с помощью амперсанда, например ">"&G1.
    7. Функция MAXIFS доступна только в Excel 2019 и Excel для Office 365. В более ранних версиях эта функция недоступна.

    Вот как можно найти максимальное значение в Excel с помощью условий. Я благодарю вас за чтение и надеюсь скоро увидеть вас на нашем блоге!

    Скачать рабочую тетрадь для практических занятий:

    Примеры формул Excel MAXIFS (файл.xlsx)

    Майкл Браун — увлеченный технологический энтузиаст, стремящийся упростить сложные процессы с помощью программных инструментов. Имея более чем десятилетний опыт работы в технологической отрасли, он отточил свои навыки в Microsoft Excel и Outlook, а также в Google Sheets и Docs. Блог Майкла посвящен тому, чтобы делиться своими знаниями и опытом с другими, предоставляя простые советы и учебные пособия для повышения производительности и эффективности. Являетесь ли вы опытным профессионалом или новичком, в блоге Майкла вы найдете ценную информацию и практические советы, которые помогут вам максимально эффективно использовать эти важные программные инструменты.