Excel для Microsoft 365 Excel 2021 Excel 2019 Excel 2016 Excel 2013 Excel 2010 Excel 2007 Еще…Меньше
Предположим, вы хотите узнать, у кого самый маленький показатель погрешности в производственной цехе или самая большая заработная плата в вашем отделе. Существует несколько способов вычисления наименьшего или наибольшего числа в диапазоне.
Если ячейки находятся в соединимой строке или столбце
-
Вы можете выбрать ячейку снизу или справа от чисел, для которых нужно найти наименьшее число.
-
На вкладке Главная в группе Редактирование щелкните стрелку рядом с кнопкой , выберите min (вычисляет наименьшее) или Max (вычисляет наибольшее) и нажмите клавишу ВВОД.
Если ячейки не находятся в подрядной строке или столбце
Для этого используйте функции МИН, МАКС, МАЛЫЙ или БОЛЬШОЙ.
Пример
Скопируйте следующие данные на пустой лист.
|
|
Дополнительные сведения
Вы всегда можете задать вопрос специалисту Excel Tech Community или попросить помощи в сообществе Answers community.
См. также
НАИБОЛЬШИЙ
MAX
MIN
НАИМЕНЬШИЙ
Нужна дополнительная помощь?
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. Благодарю вас за чтение!
Поиск минимального или максимального значения по условию
В 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
Смотрите также числа в диапазонеCzeslav слабо?
- > x Then 2007 дома)) что, поиск по у мне надо Вы вдруг решили, с каждой ячейкойНе снимая выделения с
значения столбца B
Параметр, с помощью
- удоблетворяющие критерию. значение из массива и рисунок выше).Для использования этой функцииЭтот пример объяснит, как
(27)
: Здравствуйте. Не могу
ant6729x = Cells(i,Еще раз всем всему листу? Какие проставить: Если число что файл-пример не выделенного диапазона. А диапазона B2:B9 сразу (Расходы): формулы =ИНДЕКС($C$6:$C$18;G6)Как показано на рисунке (450; 6544; 1245),Сформулируем задачи в виде требуется чтобы: найти адрес ячейки1
- разобраться, какие это: RAN, ну, не «B») спасибо!!)))
столбцы?
в диапазоне/массиве первое
нужен? функция НАИБОЛЬШИЙ работает же создаем второеПринцип действий обоих правилВ процессе подготовки разного выше, Параметр3 вообще т.е. 6544. вопросов.исходная таблица имела заголовки с максимальным значением2
аргументы в INDEX?, могу я пока,
sz = i
ant6729
kim
office-guru.ru
Функция ДМАКС() — нахождение максимального значения по условию в MS EXCEL
по велечине, тоNic70y обратно пропорционально. правило условного форматирования.
одинаковый. Они отличаются рода ранжирования или отстутствует в исходнойАльтернативное решение — формулаВопрос1 (Определить максимальные продажи столбцов; в столбце.3 Почему стоит знак
Синтаксис функции ДМАКС()
как Вы писатьEnd If
- : Всем доброй ночи!: vikttur, мне особо
- 1, если второе,:Полезный совет! Если нет
- Снова выберите инструмент: только функциями =МАКС() анализа показателей успешности, таблице, но «максимальным»
=НАИБОЛЬШИЙ(ЕСЛИ(B6:B11=G6;C6:C11;»»);1), которая вводится
Белова).критерии должны были оформленыДля начала используем функцию4 *?. Смотрела справку в одну строку.NextЕсть ограничение по приглянулись диапазоны: 6пробел5536 то2 и т.д.Цитата необходимости разбивать 3
«ГЛАВНАЯ»-«Стили»-«Условное форматирование»-«Создать правило»-«Использовать и =МИН(). Более очень удобно если значением является 0! как формула массиваТ.е. найдем строки, в виде небольшойMAX
- 5 по функции, там ..Пытался… пришлось лезтьCells(sz, «A») = сумме для последнего и 65пробел536 ;) Просто придется «городить»still25, 12.04.2015 в
- наименьших значения на формулу для определения того аргументы функций выделить цветом наилучшийЛучше использовать альтернативную формулу (подробнее см. здесь). в которой в таблицы с заголовками;
- (МАКС), чтобы найти6 должны быть интервалы…
в макрорекодер… 4 в первой колонкеGuest очень длинную формулу. 21:56, в сообщении разные цвета, тогда форматируемых ячеек». идентичны. Первая функция или наихудший результат.
Задачи
=НАИБОЛЬШИЙ(ЕСЛИ(A6:A15=D6;B6:B15;»»);1), которая возвращает В случае, когда столбце Продавец содержитсязаголовки таблицы критериев совпадали максимальное значение в7 Помогите, пожалуйста, разобраться.Подскажите, пожалуйста, какEnd Sub значения (=4 в: ДА, скобки точно
Может кто знает № 7200?’200px’:»+(this.scrollHeight+5)+’px’);»>Файл-пример не
необязательно создавать 3В поле ввода введите =МАКС() ищет в Как выделить максимальное ошибку #ЧИСЛО! в ни одна строка значение Белов. Если с заголовками исходной столбце8 Формула работает, а
Вы видите?!
- ant6729 этом случае), Ограничение не поставил…. путь покороче?? нужен, правила условного форматирования формулу: =НАИМЕНЬШИЙ($B$2:$B$9;2)=B2 и несменяемом диапазоне с значение в Excel случае, если ни не удовлетворяет условиям, такие строки есть таблицы (если критерийА
- 9 понять ее яRAN: Вообщем, выделенная область суммы для данногоЛогика такова: Еслиviktturstill25 для одного и нажмите на кнопку абсолютными ссылками $B$2:$B$10 цветом? Здесь существенно одна строка не то формула вернет в таблице, то не задается формулой)..10 не могу: имел ввиду не значения по второй
в ячейке A1: ???: 3. …кроме тех того же диапазона. «Формат», чтобы задать максимальное значение. После поможет условное форматирование. удовлетворяет критерию. ошибку #ЧИСЛО! в для них выведемДМАКС(база_данных;поле;условия)=MAX(A:A)AСтасиД
Range(«A1»).Select selection а область,
колонке условно = стоит «BS», тоРАНГ? случаев, когда вопрос Достаточно просто немного оранжевый цвет заливки функции стоит оператор
Преимуществом такого подходаФункция НАИМЕНЬШИЙ(), английский вариант отличие от ДМАКС(), максимальное значение изБаза_данных=МАКС(A:A)Данные: А Вы войдитеSelection.End(xlDown).Select ‘ пущай по которой нужно 30. должнл быть «1»,Igor67 носит общий характер… изменить формулу добавив для ячейки. И сравнения с изменяемой является сохранение работоспособности SMALL(), возвращает k-ое наименьшее которая вернет 0
столбца Продажи.представляет собой диапазонТеперь воспользуемся функциейДанные в «Formulas==>Evaluate Formula
будет A5
считать.Нужно, чтобы если а вот если: Может Вам РАНГ() — расплывчатая формулировка всего один символ нажмите ОК на текущей ячейкой которая автоматического выделения цветом
значение из массива (это может ввести
Алгоритм следующий:
ячеек с даннымиMATCH3 (fx)» и пошагово
Selection.Offset(0, 1).Select ‘Но взял на это ограничение превышается,
AM, то надо
нужно?ок я понял, оператора: =НАИМЕНЬШИЙ($B$2:$B$9;3)>=B2. То всех окнах. имеет относительную ссылку лучших/худших показателей даже
данных. Например, если в заблуждение, т.к.Создадим в диапазоне
Недостаток функции
связанными логически, т.е.(ПОИСКПОЗ), чтобы найти1 просмотрите действия формулы. B5 вооружение Вашу идею, искалось первое максимальное поискать в листеyevgeniy буду всегда прикладывать есть – большеСоздайте третье правило. А начиная от B2. при добавлении или
диапазон не понятно естьG5:G6 таблицу. Верхняя строка номер строки с
4TimShaSelection.Offset(1, 0).Select ‘ немного извращался… опять во второй колонке «номера» кто это,
excel2.ru
Максимальный / Наибольший (Минимальный / Наименьший) в Excel. Бесплатные примеры и статьи.
: используйте =РАНГ() файл-пример или равно. в поле ввода Правило условного форматирования удалении данных изA1:А4 ли в исходнойтабличку критериев (желательно таблицы должна содержать
excel2.ru
Максимальный по условию с выводом номера позиции в MS EXCEL
максимальным значением.4: Спасибо, посмотрела, немного B6 в своем стиле. значение, удовлетворяющее условию если это «гастроном»Sergeа вопрос решенВсе описанные способы хороши введите формулу: =НАИМЕНЬШИЙ($B$2:$B$9;3)=B2 читает данную формулу таблицы.содержит значения 2;10;3;7, таблице строки, удоблетворяющие над исходной таблицей заголовки всех столбцов.=MATCH(MAX(A:A),A:A,0)
5 не то. ЯRange(Selection, Selection.End(xlDown)).Select ‘ И получил то,
не более 30. — должно быть: Всем доброго вечера. следующим образом тем, что при и нажмите на так: если числоДля примера возьмем таблицу
Решение
тоформула =НАИМЕНЬШИЙ(A1:А4;2) вернет критерию или нет. или сбоку, чтобы В=ПОИСКПОЗ(МАКС(A:A);A:A;0)8
имела ввиду, что B6: (Selection.End(xlDown) пущай что нужно.Если поиск первого 2, «хозтовары» -Помогите, пжл, разобраться
200?’200px’:»+(this.scrollHeight+5)+’px’);»>=ЕСЛИОШИБКА(НАИМЕНЬШИЙ(ЕСЛИ($A6:$E6=$F$6;СТОЛБЕЦ($A6:$E6));СТОЛБЕЦ(A1));»») изменении значений в кнопку «Формат», чтобы больше всех, то
расходов:
значение 3 (второе См. раздел она не мешалаБазе_данных
excel2.ru
Как выделить наименьшее и наибольшее значение в Excel цветом
Пояснение:2 в синтаксисе функции будет B100)Sub Макрос3() сверху вниз по 3. Только надо с формулой:где $F$6 максимальное ячейках они все задать желтый цвет выделить цветом. КакЧтобы молниеносно выделить наибольшие наименьшее).Недостаток функции добавлению новых данныхстроки называются записями,
Как выделить цветом максимальное значение в Excel
Функция3
INDEX должны бытьитого в сухомRange(«A1»).Select
- второй колонке максимального искать не поНеобходимо найти в значение строки возвращенное
- равно будут работать заливки для ячейки.
- только совпадает максимальное и наименьшие расходы
- Нахождение максимального/ минимального значения). в таблицу), состоящую а столбцы —MATCH3 перечислены диапазоны ИНДЕКС(массив; остаткеSelection.End(xlDown).Select значения завершен и определенному номеру, а диапазоне максимальное значение,
функцией МАКС автоматически. ОК на всех
Как выбрать минимальное значение в Excel
число (которое возвращает делаем следующее: — простая задача,Вопрос 2 (Последняя продажа из заголовка (совпадает полями.(ПОИСКПОЗ) сводится к7 номер_строки; [номер_столбца]) .Код Range(Range(«A1»).End(xlDown).Offset(1, 1),Selection.Offset(0, 1).Select максимальное значение, удовлетворяющее по первым двум
но чтобы оно[del]ovoistill25 окнах. функция МАКС) соВыделите диапазон с расходами но она несколько
Белова). с названием заголовкаПоле=ПОИСКПОЗ(12;А:А;0)B А в формуле
Range(«A1»).End(xlDown).Offset(1, 1).End(xlDown)).SelectSelection.Offset(1, 0).Select условию найдено, далее буквам. удовлетворяло логику поиска: Возможно ли найти: Сабж. Как вытащитьК одному и тому значением текущей ячейки, B2:B10 и выберите усложняется, если МАКС/В какой день столбца исходной таблицы, — заголовок столбца, вили4 — диапазоны иЯ, конечно, думаю,Range(Selection, Selection.End(xlDown)).Select исполняется строка кода,vikttur — ЕСЛИ(НАИБОЛЬШИЙ(I3:I7;1);1) Здесь 10 максимальных (минимальных) максимальную ячейку из же диапазону должно формула возвращает логическое инструмент: «ГЛАВНАЯ»-«Стили»-«Условное форматирование»-«Создать МИН нужно найти Белов продал последнюю к которому применяется котором ищется максимальное=712
знак * (умножить???).
Выделение цветом трех наименьших значений подряд
что можно иlr = Cells(Rows.Count, например, Range («H1″: Мастак Вы на получается, что он значений в таблице строки и определить быть применено 3 значение ИСТИНА и
правило». не среди всех партию товара? критерий) и собственно значение, если выполняется. Т.е. возвращает позицию6 Подскажите логику расчета проще, но сие 1).End(xlUp).Row
) = 33 объяснения :) найдет первое наибольшее
- не прибегая к какому столбцу она правила условного форматирования. сразу же применяетсяВыберите: «Использовать формулу для
- значений диапазона, а=ДМАКС(B5:D11;D5;G5:G6) критерия (условия отбора); условие. Существует несколько максимального значения в54 или может быть дословный перевод.
- ps = Selection.Row или какой-нибудь Sub=ЕСЛИ(ЛЕВСИМВ(A1;2)=»Bs»;1;ЕСЛИ(ВПР(A1;номера!$A$1:$C$9;2;0)=»Гастроном»;2;3)) число и, соответственно, автофильтру? Эти значения принадлежит? Чтобы проверить выберите формат со соответствующим
- определения форматируемых ячеек». только среди тех,Решение аналогично предыдущей задаче,Условия отбора должны быть вариантов заполнения аргумента столбце4 есть другой синтаксис…
- ant6729vs = Selection.Rows.CountНапротив первого найденногоGuest проставит 1. Но потом должны участвоватьнапример имеем: инструмент: «ГЛАВНАЯ»-«Стили»-«Условное форматирование»-«Управление цветом заливки. Так
- В поле ввода введите которые удовлетворяют определенному только максимальное значение записаны в специальномПолеA8
СтасиД: Спасибо )
x = 0 максимального значения из: Большое спасибо!!!))))) Сам у мне надо в дальнейших вычислениях.
A B C D E правилами». же срабатывает правило формулу: =МАКС($B$2:$B$10)=B2 условию. Эта задача ищется не в
Функция наименьший и наибольший в Excel
формате: =»=Белов» (будет:. Задайте третий аргумент7: Если выборка единичная,RANFor i = второй колонки, удовлетворяющего бы долго промучился)))) проставить: Если числоGuest1 2 5 3 7Три наименьшие значения автоматически для умного форматированияНажмите на кнопку «Формат», решена в статье столбце производиться поиск вможно ввести текстовое значение, равным23 то есть такой: ps To ps условию , вP.S. to kim в диапазоне/массиве первое: Сортировка «А-Я», «Я-А»5 4 6 1 9 выделились разными цветами.
ячеек столбца и чтобы выделить максимальное Максимальный и МинимальныйС столбце Продавец только представляющий собой название0Формула вариант -Sub мяв() + vs - первой колонке ставится — Сам удивился, по велечине, то
и ручками3 8 0 2 6Внимание! Если просматриваемый диапазон с функцией МИН. значение в столбце по условию в
exceltable.com
Поиск максимального значения в строке и определение столбца (Формулы/Formulas)
(Продажи), а в значений одного из заголовков, чтобы вернуть точное=НАИМЕНЬШИЙ (A2:A10;4)Код =ДМАКС($A$1:$J$20;8;L1:M2)
With Range(«A1»).End(xlDown).Offset(1, 1)
1
значение Cells (lr,1)
может, из-за того,
1, если второе,
Guest
на выходе получить: содержит несколько одинаковых
Excel. Для этого
MS EXCEL. Здесь столбце
точно совпадающихБазы_данных
совпадение.
4-е наименьшее число
Спасибо! Работает, иRange(.Item(1), .Item(1).End(xlDown)).SelectIf Cells(i, «B»)
value(так напишу). что сохранял из
то2 и т.д.: есть формулы сортировки,A B C минимальных значений всеВ разных ситуациях полезно в появившемся окне найдем номер позицииD
со словом Белов(исходной таблицы) .
Наконец, используем функцию в первом столбце мне понятно, какEnd With
> x ThenПодскажите, пожалуйста, как 2003 англ версии Просто придется «городить» тут выкладывались D E F
они будут выделены применяется автоматическое выделение «Формат ячеек» на (строки), в которой
(Дата). (или белов, БЕЛОВ, Текст указывается вADRESS (4) =).End Sub
x = Cells(i, решить эту искусственную в 2007.?? ;-)) очень длинную формулу.[del]ovoi
1 2 5 цветом. цветом трех ячеек
вкладке «Заливка» выберите содержится это максимальное
Вопрос 3 (Максимальные продажи
т.е. без учета двойных кавычках, например(АДРЕС), чтобы получить
excelworld.ru
Поиск 10 максимальных значений в таблице
=НАИМЕНЬШИЙ (B2:B10;2)Задан массив. Нужно найтиСтасиД «B») задачу. Пример приложил.pavel159357 Может кто знает: Я не против
3 7 E7Аналогичным способом можно выделять с наименьшими значениями.
желаемый цвет заливки значение. Мяса продавцом Белов)
регистра). Если написать «Возраст» или «Урожай», адрес ячейки.2-е наименьшее число минимальное число, максимальное,: Здравствуйте. Помогите написатьsz = i Во вложениях пока: Большое спасибо!!!))))) Сам путь покороче??{/post}{/quote} ручками :)), просто5 4 6 цветом наибольшие значения. Условное форматирование со для ячеек. Например,
Пусть имеется таблица с=ДМАКС(A5:C11;C5;F5:G6)
условие не в
можно ввести число (без=ADRESS(MATCH(MAX(A:A),A:A,0),1) во втором столбце
второе по минимальности формулу для поиска
End If что неудачные попытки.
бы долго промучился))))Ничего не понял на основе этих 1 9 E9 Просто изменить в соответственными формулами прекрасно зеленый. И нажмите тремя столбцами: текстовымВ данном случае таблица виде =»=Белов», а кавычек), задающее положение=АДРЕС(ПОИСКПОЗ(МАКС(A:A);A:A;0);1) (3) число, второе по максимального пробега дляNextMichael_SP.S. to kim (см.файл), выкладывайте пример.
десяти значений потом3 8 0
формуле функцию НАИМЕНЬШИЙ
справляется с данной ОК на всех и 2-мя числовыми
критериев представляет собой просто ввести в
столбца вПояснение:
1 максимальности число. Построить
черных Мерседесов. Показалось,Cells(sz, «A») =: Что-то непонятно… что — Сам удивился,22,5 кб форумулы вычисляются, каждый 2 6 B8 на НАИБОЛЬШИЙ. Например: задачей. Таблица с открытых окнах. (см. файл примера). 2 столбца Товар ячейку значение Белов,Базе_данныхФункция2 диаграмму. что легко, но Cells(lr, 1).Value
с чем и может, из-за того,
kim
раз предеться ссылкиetc.
=НАИБОЛЬШИЙ($B$2:$B$9;3)=B2
данными для примера:В результате мы выделилиНайдем максимальное значение, соответствующее
и Продавец. то условию будут: 1 — дляADRESS3Леонид олейник
вот не получается.ActiveWorkbook.Worksheets(«Лист1»).AutoFilter.Sort.SortFields.Clear где суммируется что сохранял из
: Так наверное как-то… не них менять.:((Есть идеи?
Функция =НАИМЕНЬШИЙ() ищет вУсложним немного задачу. Ячейка цветом ячейку с
Товар1, затем определелим
Вопрос 4 (Максимальные продажи удовлетворять текстовые строки, первого столбца, 2
(АДРЕС) сводится к
4: МИН — Возвращает Если пишу вActiveWorkbook.Worksheets(«Лист1»).AutoFilter.Sort.SortFields.Add Key:=Range( _
Покажите пример вручную, 2003 англ версии=РАНГ(A1;$A$1:$A$20)+СЧЁТЕСЛИ($A$1:$A1;A1)-1 А кроме меня
Nic70y заданном (в первом с наименьшим значением
максимальным числовым значением. номер позиции (строки), среди продаж Белова которые — для второго=АДРЕС(7;1)5 наименьшее значение в формуле только одно»A1:A300″), SortOn:=xlSortOnValues, Order:=xlAscending, как должно быть. в 2007.?? ;-)){/post}{/quote}Guest еще и другие: да. файл пример аргументе) диапазоне очередное
должна автоматически получитьЧтобы выделить цветом минимальное в которой содержится
или Батурина)
содержат и т.д.или
6 списке аргументов. условие — работает DataOption:= _ant6729Подскажите, пжл, использовал
: Да, спасибо. это люди работать с приложите.
наименьшее значение. Очередь красный цвет заливки. значение в Excel, это максимальное значение,=ДМАКС(B5:C11;C5;G5:G7)слово Белов, например,
можно ввести ссылку на=$А$7AМАКС — Возвращает (например, Мерседес), аxlSortNormal: Michael_S, вложил документ, «ранг», но он помогло. документом будут, ониmechanix85
указана во втором Следующая ячейка с
повторите весь порядок затем выведем соответствующееВ данном случае таблица
«Белов Иван», «Иван ячейку, содержащую заголовок
. Первый аргумент определяет
B наибольшее значение из с двумя- никак.With ActiveWorkbook.Worksheets(«Лист1»).AutoFilter.Sort в нем на не по порядку
Не хочу показаться о формулах вообще
planetaexcel.ru
Поиск максимального значения в процессе суммирования (Макросы/Sub)
: /// аргументе функции. То
вторым наименьшим значением действий, описанных выше. значение из столбца критериев представляет собой Белов» и пр.) столбца. номер строки. ВторойДанные набора значений.
СтасиД.Header = xlYes Лист2 пример действия проставляет рейтинг при наглым, но мож ничего слышать не
МВТ есть если во получит цвет заливки Только вместо функции Параметр. 1 столбец ПродавецПредполагаем, чтоУсловия аргумент определяет номерДанные
НАИМЕНЬШИЙ -:.MatchCase = False кода. двух одинаковых значениях кто глянет на хотят.
: Позволю себе немного втором аргументе мы оранжевый. А третье МАКС, должна бытьСначала сформируем список Товаров
с 2-мя строкамиБаза_данных — интервал ячеек, который столбца.
3НАИБОЛЬШИЙ -
СтасиД.Orientation = xlTopToBottomWasilich и не хочет вторую вкладку, надо
DL модернизировать формулу предложенную указали число 3, наименьшее значение – функция МИН. Данная без повторов (см. (с фамилиями продацов(исходная таблица) находится содержит задаваемые условия
Урок подготовлен для Вас4
A
, задание должно быть
.SortMethod = xlPinYin
: считать при пустых 2 формулы срастить,: Формула массива
mechanix85 значит функция возвращает
желтый. функция позволяет выбрать
статью Отбор уникальных
Белов и Батурин).
в
(т.е. таблица критериев). командой сайта office-guru.ru
5
1 в текстовом виде..ApplyЦитата ячейках(( Может можно а не получается..((
=НАИБОЛЬШИЙ($K$6:$K$29;СТРОКА(A1:A10)), чтобы получать именно третье по очередиЧтобы добиться данного эффекта наименьшее значение в значений (убираем повторы
В файле примера приведено
A5:D11С5
Структура таблицы с
Источник: http://www.excel-easy.com/examples/locate-maximum-value.html
2
Данные
Перепечатайте условие задачиEnd With
Поиск максимального значения
как нибуть это
kim
Guest адрес ячейки, а наименьшее значение заданного следует выполнить следующие
таблице Excel. А из списка) в
решение и других– это ссылка
критериями отбора для
Перевела: Ольга Гелих
3
10 в сообщение
End Sub
происходит в выделенной
поправить? Буду очень: В Вашем примере
: Спасибо!!! То, что
не номер столбца:
диапазона $B$2:$B$9. Если
действия:
вместо зеленого цвета
MS EXCEL).
задач.
на заголовок столбца,
ДМАКС() аналогична структуре
Автор: Антон Андронов
47CzeslavСпасибо, Wasilich! области Он будет
благодарен за помощь.. нет листа с надо!!!200?’200px’:»+(this.scrollHeight+5)+’px’);»>=ПОДСТАВИТЬ(АДРЕС(СТРОКА();ПОИСКПОЗ(МАКС(A1:E1);A1:E1));»$»;»») результат вычисления функции
Выделите диапазон ячеек B2:B9 заливки выберите красныйЗатем, определим максимальное количествоВ случае, когда ни
в котором ищется для Расширенного фильтраФункция ДМАКС(), английский вариант59: Условие задачи: поRAN
равен 7 Послеkim
названием «номера»pavel159357Nic70y
равен текущей ячейке и выберите инструмент:
цвет. для определенного товара
одна строка не максимальное значение, если
и, например, функции DMAX(), находит в6
27 таблице сведений об
: Я, конечно, дико этого напротив него
: Так наверное?Guest: Всем доброго вечера.: Здравствуйте хулиганы!
значит к ней «ГЛАВНАЯ»-«Стили»-«Условное форматирование»-«Создать правило»-«Использовать
К одному и тому (см. статью Максимальный удовлетворяет условиям, то
выполняется условие.
БДСУММ().
столбце максимальное значение,
4
excelworld.ru
Поиск максимального значения с условием
2 автомобилях найти значение извиняюсь, но в станет 4 ВсёПостарайтесь в следующий: Ээээ, сорри, этоПомогите, пжл, разобратьсяНу вообще-то в присваивается соответственный формат формулу для определения же диапазону должно и Минимальный по
функция ДМАКС() вернетG5:G6Предположим, что в диапазоне удовлетворяющее заданным условиям.72 максимального пробега для
чем великая сермяжнаяТак что ли? раз прикреплять пример вкладка Значение. )))) с формулой: примере (которого нет)
(цвет заливки). Важно форматируемых ячеек». быть применено 2 условию в MS 0. Это может
– ссылка на
A5:D11Функция ДМАКС() относится к
Формула3 черных Мерседесов. правда этого попрыгунства?Sub www() xls (2003 Excel)viktturНеобходимо найти в не так отметить что вВ поле ввода введите правила условного форматирования.
EXCEL). ввести в заблуждение, табличку критериев (см.имеется таблица продаж той же группе
=НАИБОЛЬШИЙ (A2:B6;3)4СтасиДИдем в 1ps = Selection.RowDV: Что Вы хотели диапазоне максимальное значение,200?’200px’:»+(this.scrollHeight+5)+’px’);»>=ПОДСТАВИТЬ(АДРЕС(1;ПОИСКПОЗ(МАКС(A1:E1);A1:E1;0);4);1;)&МАКС(A1:E1) формуле для просмотра формулу: =НАИМЕНЬШИЙ($B$2:$B$9;1)=B2 и Чтобы проверить выберитеПозицию максимального значения в т.к. не понятно:
рисунок выше). ( функций, что иТретье по величине
5
: Попробуйте такую обычную класс, потом воvs = Selection.Rows.Count
CyberForum.ru
Здравствуйте! подскажите как найти: «второе по минимальности число в экселе», «второе по максимальности число в экселе»,
: Или так: сказать формулой но чтобы оноstill25 диапазона мы используем нажмите на кнопку
инструмент: «ГЛАВНАЯ»-«Стили»-«Условное форматирование»-«Управление столбце Всего заказов есть ли наИтоговая формула выглядит так
База_данных БДСУММ(), БСЧЁТ() и число из приведенных
6
(немассивную) формулу, только
2, потом… в
x = 0
=СУММ(—(ЧАСТОТА(($B$2:$B$20>B2)*$B$2:$B$20;($B$2:$B$20>B2)*$B$2:$B$20)>0))
ЕСЛИ(A1=AM654;0;ЕСЛИ(A1=AM654;1;»ошибка «))
удовлетворяло логику поиска
: Модератор, а где
абсолютные адреса ссылки,
«Формат», чтобы задать
правилами»
определелим с помощью
самом деле строки,
=ДМАКС(B5:C11;C5;G5:G6)
), содержащая
др. Поэтому составление
выше чисел (5)Формула переведите её,если у
10, и получаемFor i =pavel159357
Два совершенно одинаковых
— ЕСЛИ(НАИБОЛЬШИЙ(I3:I7;1);1) Здесь
нарушение? Файл-пример не
а после оператора
красный цвет заливки
Финальный эффект применения двух
формулы массива:
удовлетворяющие критерию и
Как видно из исходной
Поля
формул и задание
=НАИБОЛЬШИЙ (A2:B6;7)
=МИН (A2:A6)Поиск наименьшего
Вас русифицированный офис.
по шапке.
ps To ps
: Спасибо. Так все
условия, текст нужно
получается, что он
нужен, поиском не
сравнения =B2 –
для ячейки. И
правил условного форматирования
=НАИБОЛЬШИЙ(ЕСЛИ(($A$6:$A$18=E6)*($B$6:$B$18=F6);СТРОКА($A$6:$A$18)-СТРОКА($A$5);»»);1)
максимальное значение =0
таблицы, условиям удовлетворяет
(столбцы) Товар, Продавец,
критериев производится для
Седьмое по величине
числа в диапазоне
Код =MAX(INDEX(ПробегАвто*(B2:B20=»Mersedes»)*(G2:G20=»черный»);0))
А сразу зайти
+ vs -
отлично работает. to
писать в квавычках: найдет первое наибольшее нашел, что не
относительные, так как
нажмите ОК на для выделения цветомВыведем значение, соответствующее максимальному
или в исходной
3 строки, поэтому
Продажи и Дата
ДМАКС() аналогично этим
число из приведенных
(0)
СтасиД
в 10 и
1
kim — конечно,
A1=»AM654″
число и, соответственно,
так?
значение функции сравнивается
всех открытых окнах.
наибольшего и наименьшего
значению из столбца
таблице отстутствуют строки,
результатом будет максимальное
(см. файл примера
функциям.
выше чисел (4)
=МАКС (A2:A6)Поиск наибольшего: СПАСИБО!!!! РАБОТАЕТ!!! получить по шапке
If Cells(i, «B»)
сам мучаюсь сВПР(C3;номера!$1:$65536;2;0) — это проставит 1. Но
Это почему же
Этот учебник рассказывает о главных преимуществах функций ИНДЕКС и ПОИСКПОЗ в Excel, которые делают их более привлекательными по сравнению с ВПР. Вы увидите несколько примеров формул, которые помогут Вам легко справиться со многими сложными задачами, перед которыми функция ВПР бессильна.
В нескольких недавних статьях мы приложили все усилия, чтобы разъяснить начинающим пользователям основы функции ВПР и показать примеры более сложных формул для продвинутых пользователей. Теперь мы попытаемся, если не отговорить Вас от использования ВПР, то хотя бы показать альтернативные способы реализации вертикального поиска в Excel.
Зачем нам это? – спросите Вы. Да, потому что ВПР – это не единственная функция поиска в Excel, и её многочисленные ограничения могут помешать Вам получить желаемый результат во многих ситуациях. С другой стороны, функции ИНДЕКС и ПОИСКПОЗ – более гибкие и имеют ряд особенностей, которые делают их более привлекательными, по сравнению с ВПР.
- Базовая информация об ИНДЕКС и ПОИСКПОЗ
- Используем функции ИНДЕКС и ПОИСКПОЗ в Excel
- Преимущества ИНДЕКС и ПОИСКПОЗ перед ВПР
- ИНДЕКС и ПОИСКПОЗ – примеры формул
- Как находить значения, которые находятся слева
- Вычисления при помощи ИНДЕКС и ПОИСКПОЗ
- Поиск по известным строке и столбцу
- Поиск по нескольким критериям
- ИНДЕКС и ПОИСКПОЗ в сочетании с ЕСЛИОШИБКА
Содержание
- Базовая информация об ИНДЕКС и ПОИСКПОЗ
- ИНДЕКС – синтаксис и применение функции
- ПОИСКПОЗ – синтаксис и применение функции
- Как использовать ИНДЕКС и ПОИСКПОЗ в Excel
- Почему ИНДЕКС/ПОИСКПОЗ лучше, чем ВПР?
- 4 главных преимущества использования ПОИСКПОЗ/ИНДЕКС в Excel:
- ИНДЕКС и ПОИСКПОЗ – примеры формул
- Как выполнить поиск с левой стороны, используя ПОИСКПОЗ и ИНДЕКС
- Вычисления при помощи ИНДЕКС и ПОИСКПОЗ в Excel (СРЗНАЧ, МАКС, МИН)
- О чём нужно помнить, используя функцию СРЗНАЧ вместе с ИНДЕКС и ПОИСКПОЗ
- Как при помощи ИНДЕКС и ПОИСКПОЗ выполнять поиск по известным строке и столбцу
- Поиск по нескольким критериям с ИНДЕКС и ПОИСКПОЗ
- ИНДЕКС и ПОИСКПОЗ в сочетании с ЕСЛИОШИБКА в Excel
Базовая информация об ИНДЕКС и ПОИСКПОЗ
Так как задача этого учебника – показать возможности функций ИНДЕКС и ПОИСКПОЗ для реализации вертикального поиска в Excel, мы не будем задерживаться на их синтаксисе и применении.
Приведём здесь необходимый минимум для понимания сути, а затем разберём подробно примеры формул, которые показывают преимущества использования ИНДЕКС и ПОИСКПОЗ вместо ВПР.
ИНДЕКС – синтаксис и применение функции
Функция INDEX (ИНДЕКС) в Excel возвращает значение из массива по заданным номерам строки и столбца. Функция имеет вот такой синтаксис:
INDEX(array,row_num,[column_num])
ИНДЕКС(массив;номер_строки;[номер_столбца])
Каждый аргумент имеет очень простое объяснение:
- array (массив) – это диапазон ячеек, из которого необходимо извлечь значение.
- row_num (номер_строки) – это номер строки в массиве, из которой нужно извлечь значение. Если не указан, то обязательно требуется аргумент column_num (номер_столбца).
- column_num (номер_столбца) – это номер столбца в массиве, из которого нужно извлечь значение. Если не указан, то обязательно требуется аргумент row_num (номер_строки)
Если указаны оба аргумента, то функция ИНДЕКС возвращает значение из ячейки, находящейся на пересечении указанных строки и столбца.
Вот простейший пример функции INDEX (ИНДЕКС):
=INDEX(A1:C10,2,3)
=ИНДЕКС(A1:C10;2;3)
Формула выполняет поиск в диапазоне A1:C10 и возвращает значение ячейки во 2-й строке и 3-м столбце, то есть из ячейки C2.
Очень просто, правда? Однако, на практике Вы далеко не всегда знаете, какие строка и столбец Вам нужны, и поэтому требуется помощь функции ПОИСКПОЗ.
ПОИСКПОЗ – синтаксис и применение функции
Функция MATCH (ПОИСКПОЗ) в Excel ищет указанное значение в диапазоне ячеек и возвращает относительную позицию этого значения в диапазоне.
Например, если в диапазоне B1:B3 содержатся значения New-York, Paris, London, тогда следующая формула возвратит цифру 3, поскольку «London» – это третий элемент в списке.
=MATCH("London",B1:B3,0)
=ПОИСКПОЗ("London";B1:B3;0)
Функция MATCH (ПОИСКПОЗ) имеет вот такой синтаксис:
MATCH(lookup_value,lookup_array,[match_type])
ПОИСКПОЗ(искомое_значение;просматриваемый_массив;[тип_сопоставления])
- lookup_value (искомое_значение) – это число или текст, который Вы ищите. Аргумент может быть значением, в том числе логическим, или ссылкой на ячейку.
- lookup_array (просматриваемый_массив) – диапазон ячеек, в котором происходит поиск.
- match_type (тип_сопоставления) – этот аргумент сообщает функции ПОИСКПОЗ, хотите ли Вы найти точное или приблизительное совпадение:
- 1 или не указан – находит максимальное значение, меньшее или равное искомому. Просматриваемый массив должен быть упорядочен по возрастанию, то есть от меньшего к большему.
- 0 – находит первое значение, равное искомому. Для комбинации ИНДЕКС/ПОИСКПОЗ всегда нужно точное совпадение, поэтому третий аргумент функции ПОИСКПОЗ должен быть равен 0.
- -1 – находит наименьшее значение, большее или равное искомому значению. Просматриваемый массив должен быть упорядочен по убыванию, то есть от большего к меньшему.
На первый взгляд, польза от функции ПОИСКПОЗ вызывает сомнение. Кому нужно знать положение элемента в диапазоне? Мы хотим знать значение этого элемента!
Позвольте напомнить, что относительное положение искомого значения (т.е. номер строки и/или столбца) – это как раз то, что мы должны указать для аргументов row_num (номер_строки) и/или column_num (номер_столбца) функции INDEX (ИНДЕКС). Как Вы помните, функция ИНДЕКС может возвратить значение, находящееся на пересечении заданных строки и столбца, но она не может определить, какие именно строка и столбец нас интересуют.
Как использовать ИНДЕКС и ПОИСКПОЗ в Excel
Теперь, когда Вам известна базовая информация об этих двух функциях, полагаю, что уже становится понятно, как функции ПОИСКПОЗ и ИНДЕКС могут работать вместе. ПОИСКПОЗ определяет относительную позицию искомого значения в заданном диапазоне ячеек, а ИНДЕКС использует это число (или числа) и возвращает результат из соответствующей ячейки.
Ещё не совсем понятно? Представьте функции ИНДЕКС и ПОИСКПОЗ в таком виде:
=INDEX(столбец из которого извлекаем,(MATCH (искомое значение,столбец в котором ищем,0))
=ИНДЕКС(столбец из которого извлекаем;(ПОИСКПОЗ(искомое значение;столбец в котором ищем;0))
Думаю, ещё проще будет понять на примере. Предположим, у Вас есть вот такой список столиц государств:
Давайте найдём население одной из столиц, например, Японии, используя следующую формулу:
=INDEX($D$2:$D$10,MATCH("Japan",$B$2:$B$10,0))
=ИНДЕКС($D$2:$D$10;ПОИСКПОЗ("Japan";$B$2:$B$10;0))
Теперь давайте разберем, что делает каждый элемент этой формулы:
- Функция MATCH (ПОИСКПОЗ) ищет значение «Japan» в столбце B, а конкретно – в ячейках B2:B10, и возвращает число 3, поскольку «Japan» в списке на третьем месте.
- Функция INDEX (ИНДЕКС) использует 3 для аргумента row_num (номер_строки), который указывает из какой строки нужно возвратить значение. Т.е. получается простая формула:
=INDEX($D$2:$D$10,3)
=ИНДЕКС($D$2:$D$10;3)
Формула говорит примерно следующее: ищи в ячейках от D2 до D10 и извлеки значение из третьей строки, то есть из ячейки D4, так как счёт начинается со второй строки.
Вот такой результат получится в Excel:
Важно! Количество строк и столбцов в массиве, который использует функция INDEX (ИНДЕКС), должно соответствовать значениям аргументов row_num (номер_строки) и column_num (номер_столбца) функции MATCH (ПОИСКПОЗ). Иначе результат формулы будет ошибочным.
Стоп, стоп… почему мы не можем просто использовать функцию VLOOKUP (ВПР)? Есть ли смысл тратить время, пытаясь разобраться в лабиринтах ПОИСКПОЗ и ИНДЕКС?
=VLOOKUP("Japan",$B$2:$D$2,3)
=ВПР("Japan";$B$2:$D$2;3)
В данном случае – смысла нет! Цель этого примера – исключительно демонстрационная, чтобы Вы могли понять, как функции ПОИСКПОЗ и ИНДЕКС работают в паре. Последующие примеры покажут Вам истинную мощь связки ИНДЕКС и ПОИСКПОЗ, которая легко справляется с многими сложными ситуациями, когда ВПР оказывается в тупике.
Почему ИНДЕКС/ПОИСКПОЗ лучше, чем ВПР?
Решая, какую формулу использовать для вертикального поиска, большинство гуру Excel считают, что ИНДЕКС/ПОИСКПОЗ намного лучше, чем ВПР. Однако, многие пользователи Excel по-прежнему прибегают к использованию ВПР, т.к. эта функция гораздо проще. Так происходит, потому что очень немногие люди до конца понимают все преимущества перехода с ВПР на связку ИНДЕКС и ПОИСКПОЗ, а тратить время на изучение более сложной формулы никто не хочет.
Далее я попробую изложить главные преимущества использования ПОИСКПОЗ и ИНДЕКС в Excel, а Вы решите – остаться с ВПР или переключиться на ИНДЕКС/ПОИСКПОЗ.
4 главных преимущества использования ПОИСКПОЗ/ИНДЕКС в Excel:
1. Поиск справа налево. Как известно любому грамотному пользователю Excel, ВПР не может смотреть влево, а это значит, что искомое значение должно обязательно находиться в крайнем левом столбце исследуемого диапазона. В случае с ПОИСКПОЗ/ИНДЕКС, столбец поиска может быть, как в левой, так и в правой части диапазона поиска. Пример: Как находить значения, которые находятся слева покажет эту возможность в действии.
2. Безопасное добавление или удаление столбцов. Формулы с функцией ВПР перестают работать или возвращают ошибочные значения, если удалить или добавить столбец в таблицу поиска. Для функции ВПР любой вставленный или удалённый столбец изменит результат формулы, поскольку синтаксис ВПР требует указывать весь диапазон и конкретный номер столбца, из которого нужно извлечь данные.
Например, если у Вас есть таблица A1:C10, и требуется извлечь данные из столбца B, то нужно задать значение 2 для аргумента col_index_num (номер_столбца) функции ВПР, вот так:
=VLOOKUP("lookup value",A1:C10,2)
=ВПР("lookup value";A1:C10;2)
Если позднее Вы вставите новый столбец между столбцами A и B, то значение аргумента придется изменить с 2 на 3, иначе формула возвратит результат из только что вставленного столбца.
Используя ПОИСКПОЗ/ИНДЕКС, Вы можете удалять или добавлять столбцы к исследуемому диапазону, не искажая результат, так как определен непосредственно столбец, содержащий нужное значение. Действительно, это большое преимущество, особенно когда работать приходится с большими объёмами данных. Вы можете добавлять и удалять столбцы, не беспокоясь о том, что нужно будет исправлять каждую используемую функцию ВПР.
3. Нет ограничения на размер искомого значения. Используя ВПР, помните об ограничении на длину искомого значения в 255 символов, иначе рискуете получить ошибку #VALUE! (#ЗНАЧ!). Итак, если таблица содержит длинные строки, единственное действующее решение – это использовать ИНДЕКС/ПОИСКПОЗ.
Предположим, Вы используете вот такую формулу с ВПР, которая ищет в ячейках от B5 до D10 значение, указанное в ячейке A2:
=VLOOKUP(A2,B5:D10,3,FALSE)
=ВПР(A2;B5:D10;3;ЛОЖЬ)
Формула не будет работать, если значение в ячейке A2 длиннее 255 символов. Вместо неё Вам нужно использовать аналогичную формулу ИНДЕКС/ПОИСКПОЗ:
=INDEX(D5:D10,MATCH(TRUE,INDEX(B5:B10=A2,0),0))
=ИНДЕКС(D5:D10;ПОИСКПОЗ(ИСТИНА;ИНДЕКС(B5:B10=A2;0);0))
4. Более высокая скорость работы. Если Вы работаете с небольшими таблицами, то разница в быстродействии Excel будет, скорее всего, не заметная, особенно в последних версиях. Если же Вы работаете с большими таблицами, которые содержат тысячи строк и сотни формул поиска, Excel будет работать значительно быстрее, при использовании ПОИСКПОЗ и ИНДЕКС вместо ВПР. В целом, такая замена увеличивает скорость работы Excel на 13%.
Влияние ВПР на производительность Excel особенно заметно, если рабочая книга содержит сотни сложных формул массива, таких как ВПР+СУММ. Дело в том, что проверка каждого значения в массиве требует отдельного вызова функции ВПР. Поэтому, чем больше значений содержит массив и чем больше формул массива содержит Ваша таблица, тем медленнее работает Excel.
С другой стороны, формула с функциями ПОИСКПОЗ и ИНДЕКС просто совершает поиск и возвращает результат, выполняя аналогичную работу заметно быстрее.
ИНДЕКС и ПОИСКПОЗ – примеры формул
Теперь, когда Вы понимаете причины, из-за которых стоит изучать функции ПОИСКПОЗ и ИНДЕКС, давайте перейдём к самому интересному и увидим, как можно применить теоретические знания на практике.
Как выполнить поиск с левой стороны, используя ПОИСКПОЗ и ИНДЕКС
Любой учебник по ВПР твердит, что эта функция не может смотреть влево. Т.е. если просматриваемый столбец не является крайним левым в диапазоне поиска, то нет шансов получить от ВПР желаемый результат.
Функции ПОИСКПОЗ и ИНДЕКС в Excel гораздо более гибкие, и им все-равно, где находится столбец со значением, которое нужно извлечь. Для примера, снова вернёмся к таблице со столицами государств и населением. На этот раз запишем формулу ПОИСКПОЗ/ИНДЕКС, которая покажет, какое место по населению занимает столица России (Москва).
Как видно на рисунке ниже, формула отлично справляется с этой задачей:
=INDEX($A$2:$A$10,MATCH("Russia",$B$2:$B$10,0))
=ИНДЕКС($A$2:$A$10;ПОИСКПОЗ("Russia";$B$2:$B$10;0))
Теперь у Вас не должно возникать проблем с пониманием, как работает эта формула:
- Во-первых, задействуем функцию MATCH (ПОИСКПОЗ), которая находит положение «Russia» в списке:
=MATCH("Russia",$B$2:$B$10,0))
=ПОИСКПОЗ("Russia";$B$2:$B$10;0))
- Далее, задаём диапазон для функции INDEX (ИНДЕКС), из которого нужно извлечь значение. В нашем случае это A2:A10.
- Затем соединяем обе части и получаем формулу:
=INDEX($A$2:$A$10;MATCH("Russia";$B$2:$B$10;0))
=ИНДЕКС($A$2:$A$10;ПОИСКПОЗ("Russia";$B$2:$B$10;0))
Подсказка: Правильным решением будет всегда использовать абсолютные ссылки для ИНДЕКС и ПОИСКПОЗ, чтобы диапазоны поиска не сбились при копировании формулы в другие ячейки.
Вычисления при помощи ИНДЕКС и ПОИСКПОЗ в Excel (СРЗНАЧ, МАКС, МИН)
Вы можете вкладывать другие функции Excel в ИНДЕКС и ПОИСКПОЗ, например, чтобы найти минимальное, максимальное или ближайшее к среднему значение. Вот несколько вариантов формул, применительно к таблице из предыдущего примера:
1. MAX (МАКС). Формула находит максимум в столбце D и возвращает значение из столбца C той же строки:
=INDEX($C$2:$C$10,MATCH(MAX($D$2:I$10),$D$2:D$10,0))
=ИНДЕКС($C$2:$C$10;ПОИСКПОЗ(МАКС($D$2:I$10);$D$2:D$10;0))
Результат: Beijing
2. MIN (МИН). Формула находит минимум в столбце D и возвращает значение из столбца C той же строки:
=INDEX($C$2:$C$10,MATCH(MIN($D$2:I$10),$D$2:D$10,0))
=ИНДЕКС($C$2:$C$10;ПОИСКПОЗ(МИН($D$2:I$10);$D$2:D$10;0))
Результат: Lima
3. AVERAGE (СРЗНАЧ). Формула вычисляет среднее в диапазоне D2:D10, затем находит ближайшее к нему и возвращает значение из столбца C той же строки:
=INDEX($C$2:$C$10,MATCH(AVERAGE($D$2:D$10),$D$2:D$10,1))
=ИНДЕКС($C$2:$C$10;ПОИСКПОЗ(СРЗНАЧ($D$2:D$10);$D$2:D$10;1))
Результат: Moscow
О чём нужно помнить, используя функцию СРЗНАЧ вместе с ИНДЕКС и ПОИСКПОЗ
Используя функцию СРЗНАЧ в комбинации с ИНДЕКС и ПОИСКПОЗ, в качестве третьего аргумента функции ПОИСКПОЗ чаще всего нужно будет указывать 1 или -1 в случае, если Вы не уверены, что просматриваемый диапазон содержит значение, равное среднему. Если же Вы уверены, что такое значение есть, – ставьте 0 для поиска точного совпадения.
- Если указываете 1, значения в столбце поиска должны быть упорядочены по возрастанию, а формула вернёт максимальное значение, меньшее или равное среднему.
- Если указываете -1, значения в столбце поиска должны быть упорядочены по убыванию, а возвращено будет минимальное значение, большее или равное среднему.
В нашем примере значения в столбце D упорядочены по возрастанию, поэтому мы используем тип сопоставления 1. Формула ИНДЕКС/ПОИСКПОЗ возвращает «Moscow», поскольку величина населения города Москва – ближайшее меньшее к среднему значению (12 269 006).
Как при помощи ИНДЕКС и ПОИСКПОЗ выполнять поиск по известным строке и столбцу
Эта формула эквивалентна двумерному поиску ВПР и позволяет найти значение на пересечении определённой строки и столбца.
В этом примере формула ИНДЕКС/ПОИСКПОЗ будет очень похожа на формулы, которые мы уже обсуждали в этом уроке, с одним лишь отличием. Угадайте каким?
Как Вы помните, синтаксис функции INDEX (ИНДЕКС) позволяет использовать три аргумента:
INDEX(array,row_num,[column_num])
ИНДЕКС(массив;номер_строки;[номер_столбца])
И я поздравляю тех из Вас, кто догадался!
Начнём с того, что запишем шаблон формулы. Для этого возьмём уже знакомую нам формулу ИНДЕКС/ПОИСКПОЗ и добавим в неё ещё одну функцию ПОИСКПОЗ, которая будет возвращать номер столбца.
=INDEX(Ваша таблица,(MATCH(значение для вертикального поиска,столбец, в котором искать,0)),(MATCH(значение для горизонтального поиска,строка в которой искать,0))
=ИНДЕКС(Ваша таблица,(MATCH(значение для вертикального поиска,столбец, в котором искать,0)),(MATCH(значение для горизонтального поиска,строка в которой искать,0))
Обратите внимание, что для двумерного поиска нужно указать всю таблицу в аргументе array (массив) функции INDEX (ИНДЕКС).
А теперь давайте испытаем этот шаблон на практике. Ниже Вы видите список самых населённых стран мира. Предположим, наша задача узнать население США в 2015 году.
Хорошо, давайте запишем формулу. Когда мне нужно создать сложную формулу в Excel с вложенными функциями, то я сначала каждую вложенную записываю отдельно.
Итак, начнём с двух функций ПОИСКПОЗ, которые будут возвращать номера строки и столбца для функции ИНДЕКС:
- ПОИСКПОЗ для столбца – мы ищем в столбце B, а точнее в диапазоне B2:B11, значение, которое указано в ячейке H2 (USA). Функция будет выглядеть так:
=MATCH($H$2,$B$1:$B$11,0)
=ПОИСКПОЗ($H$2;$B$1:$B$11;0)
Результатом этой формулы будет 4, поскольку «USA» – это 4-ый элемент списка в столбце B (включая заголовок).
- ПОИСКПОЗ для строки – мы ищем значение ячейки H3 (2015) в строке 1, то есть в ячейках A1:E1:
=MATCH($H$3,$A$1:$E$1,0)
=ПОИСКПОЗ($H$3;$A$1:$E$1;0)
Результатом этой формулы будет 5, поскольку «2015» находится в 5-ом столбце.
Теперь вставляем эти формулы в функцию ИНДЕКС и вуаля:
=INDEX($A$1:$E$11,MATCH($H$2,$B$1:$B$11,0),MATCH($H$3,$A$1:$E$1,0))
=ИНДЕКС($A$1:$E$11;ПОИСКПОЗ($H$2;$B$1:$B$11;0);ПОИСКПОЗ($H$3;$A$1:$E$1;0))
Если заменить функции ПОИСКПОЗ на значения, которые они возвращают, формула станет легкой и понятной:
=INDEX($A$1:$E$11,4,5))
=ИНДЕКС($A$1:$E$11;4;5))
Эта формула возвращает значение на пересечении 4-ой строки и 5-го столбца в диапазоне A1:E11, то есть значение ячейки E4. Просто? Да!
Поиск по нескольким критериям с ИНДЕКС и ПОИСКПОЗ
В учебнике по ВПР мы показывали пример формулы с функцией ВПР для поиска по нескольким критериям. Однако, существенным ограничением такого решения была необходимость добавлять вспомогательный столбец. Хорошая новость: формула ИНДЕКС/ПОИСКПОЗ может искать по значениям в двух столбцах, без необходимости создания вспомогательного столбца!
Предположим, у нас есть список заказов, и мы хотим найти сумму по двум критериям – имя покупателя (Customer) и продукт (Product). Дело усложняется тем, что один покупатель может купить сразу несколько разных продуктов, и имена покупателей в таблице на листе Lookup table расположены в произвольном порядке.
Вот такая формула ИНДЕКС/ПОИСКПОЗ решает задачу:
{=INDEX('Lookup table'!$A$2:$C$13,MATCH(1,(A2='Lookup table'!$A$2:$A$13)*
(B2='Lookup table'!$B$2:$B$13),0),3)}
{=ИНДЕКС('Lookup table'!$A$2:$C$13;ПОИСКПОЗ(1;(A2='Lookup table'!$A$2:$A$13)*
(B2='Lookup table'!$B$2:$B$13);0);3)}
Эта формула сложнее других, которые мы обсуждали ранее, но вооруженные знанием функций ИНДЕКС и ПОИСКПОЗ Вы одолеете ее. Самая сложная часть – это функция ПОИСКПОЗ, думаю, её нужно объяснить первой.
MATCH(1,(A2='Lookup table'!$A$2:$A$13),0)*(B2='Lookup table'!$B$2:$B$13)
ПОИСКПОЗ(1;(A2='Lookup table'!$A$2:$A$13);0)*(B2='Lookup table'!$B$2:$B$13)
В формуле, показанной выше, искомое значение – это 1, а массив поиска – это результат умножения. Хорошо, что же мы должны перемножить и почему? Давайте разберем все по порядку:
- Берем первое значение в столбце A (Customer) на листе Main table и сравниваем его со всеми именами покупателей в таблице на листе Lookup table (A2:A13).
- Если совпадение найдено, уравнение возвращает 1 (ИСТИНА), а если нет – 0 (ЛОЖЬ).
- Далее, мы делаем то же самое для значений столбца B (Product).
- Затем перемножаем полученные результаты (1 и 0). Только если совпадения найдены в обоих столбцах (т.е. оба критерия истинны), Вы получите 1. Если оба критерия ложны, или выполняется только один из них – Вы получите 0.
Теперь понимаете, почему мы задали 1, как искомое значение? Правильно, чтобы функция ПОИСКПОЗ возвращала позицию только, когда оба критерия выполняются.
Обратите внимание: В этом случае необходимо использовать третий не обязательный аргумент функции ИНДЕКС. Он необходим, т.к. в первом аргументе мы задаем всю таблицу и должны указать функции, из какого столбца нужно извлечь значение. В нашем случае это столбец C (Sum), и поэтому мы ввели 3.
И, наконец, т.к. нам нужно проверить каждую ячейку в массиве, эта формула должна быть формулой массива. Вы можете видеть это по фигурным скобкам, в которые она заключена. Поэтому, когда закончите вводить формулу, не забудьте нажать Ctrl+Shift+Enter.
Если всё сделано верно, Вы получите результат как на рисунке ниже:
ИНДЕКС и ПОИСКПОЗ в сочетании с ЕСЛИОШИБКА в Excel
Как Вы, вероятно, уже заметили (и не раз), если вводить некорректное значение, например, которого нет в просматриваемом массиве, формула ИНДЕКС/ПОИСКПОЗ сообщает об ошибке #N/A (#Н/Д) или #VALUE! (#ЗНАЧ!). Если Вы хотите заменить такое сообщение на что-то более понятное, то можете вставить формулу с ИНДЕКС и ПОИСКПОЗ в функцию ЕСЛИОШИБКА.
Синтаксис функции ЕСЛИОШИБКА очень прост:
IFERROR(value,value_if_error)
ЕСЛИОШИБКА(значение;значение_если_ошибка)
Где аргумент value (значение) – это значение, проверяемое на предмет наличия ошибки (в нашем случае – результат формулы ИНДЕКС/ПОИСКПОЗ); а аргумент value_if_error (значение_если_ошибка) – это значение, которое нужно возвратить, если формула выдаст ошибку.
Например, Вы можете вставить формулу из предыдущего примера в функцию ЕСЛИОШИБКА вот таким образом:
=IFERROR(INDEX($A$1:$E$11,MATCH($G$2,$B$1:$B$11,0),MATCH($G$3,$A$1:$E$1,0)),
"Совпадений не найдено. Попробуйте еще раз!")=ЕСЛИОШИБКА(ИНДЕКС($A$1:$E$11;ПОИСКПОЗ($G$2;$B$1:$B$11;0);ПОИСКПОЗ($G$3;$A$1:$E$1;0));
"Совпадений не найдено. Попробуйте еще раз!")
И теперь, если кто-нибудь введет ошибочное значение, формула выдаст вот такой результат:
Если Вы предпочитаете в случае ошибки оставить ячейку пустой, то можете использовать кавычки («»), как значение второго аргумента функции ЕСЛИОШИБКА. Вот так:
IFERROR(INDEX(массив,MATCH(искомое_значение,просматриваемый_массив,0),"")
ЕСЛИОШИБКА(ИНДЕКС(массив;ПОИСКПОЗ(искомое_значение;просматриваемый_массив;0);"")
Надеюсь, что хотя бы одна формула, описанная в этом учебнике, показалась Вам полезной. Если Вы сталкивались с другими задачами поиска, для которых не смогли найти подходящее решение среди информации в этом уроке, смело опишите свою проблему в комментариях, и мы все вместе постараемся решить её.
Оцените качество статьи. Нам важно ваше мнение:
Подсчет максимального и минимального значения выполняется известными функциями МАКС и МИН. Бывает, что вычисления нужно произвести по группам или в зависимости от условия, как в СУММЕСЛИ.
Долгое время в 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. Например, у меня есть следующий диапазон данных, столбец A — год, а столбцы B — F заполнены номерами заказов с января по май. А теперь я хочу получить название месяца самого большого значения в каждой строке.
Найдите максимальное значение в строке и верните заголовок столбца с помощью формулы
Найдите максимальное значение в строке и верните заголовок столбца с помощью формулы
Чтобы получить заголовок столбца самого большого значения в строке, вы можете применить комбинацию функций ИНДЕКС, ПОИСКПОЗ и МАКС, чтобы получить результат. Пожалуйста, сделайте следующее:
1. Введите эту формулу в нужную вам пустую ячейку: =INDEX($B$1:$F$1,0,MATCH(MAX($B2:$F2),$B2:$F2,0)), а затем нажмите Enter чтобы получить название месяца, которое соответствует наибольшему значению в строке. Смотрите скриншот:
2. Затем выберите ячейку и перетащите маркер заполнения в диапазон, который вы хотите содержать эту формулу, см. Снимок экрана:
Внимание: В приведенной выше формуле: Б1: Ф1 строка заголовков, которую вы хотите вернуть, Б2: Ф2 — это диапазон данных, содержащий наибольшее значение, которое вы хотите найти.
Связанная статья:
Как найти максимальное значение и вернуть значение соседней ячейки в Excel?
Лучшие инструменты для работы в офисе
Kutools for Excel Решит большинство ваших проблем и повысит вашу производительность на 80%
- Снова использовать: Быстро вставить сложные формулы, диаграммы и все, что вы использовали раньше; Зашифровать ячейки с паролем; Создать список рассылки и отправлять электронные письма …
- Бар Супер Формулы (легко редактировать несколько строк текста и формул); Макет для чтения (легко читать и редактировать большое количество ячеек); Вставить в отфильтрованный диапазон…
- Объединить ячейки / строки / столбцы без потери данных; Разделить содержимое ячеек; Объединить повторяющиеся строки / столбцы… Предотвращение дублирования ячеек; Сравнить диапазоны…
- Выберите Дубликат или Уникальный Ряды; Выбрать пустые строки (все ячейки пустые); Супер находка и нечеткая находка во многих рабочих тетрадях; Случайный выбор …
- Точная копия Несколько ячеек без изменения ссылки на формулу; Автоматическое создание ссылок на несколько листов; Вставить пули, Флажки и многое другое …
- Извлечь текст, Добавить текст, Удалить по позиции, Удалить пробел; Создание и печать промежуточных итогов по страницам; Преобразование содержимого ячеек в комментарии…
- Суперфильтр (сохранять и применять схемы фильтров к другим листам); Расширенная сортировка по месяцам / неделям / дням, периодичности и др .; Специальный фильтр жирным, курсивом …
- Комбинируйте книги и рабочие листы; Объединить таблицы на основе ключевых столбцов; Разделить данные на несколько листов; Пакетное преобразование xls, xlsx и PDF…
- Более 300 мощных функций. Поддерживает Office/Excel 2007-2021 и 365. Поддерживает все языки. Простое развертывание на вашем предприятии или в организации. Полнофункциональная 30-дневная бесплатная пробная версия. 60-дневная гарантия возврата денег.
Вкладка Office: интерфейс с вкладками в Office и упрощение работы
- Включение редактирования и чтения с вкладками в Word, Excel, PowerPoint, Издатель, доступ, Visio и проект.
- Открывайте и создавайте несколько документов на новых вкладках одного окна, а не в новых окнах.
- Повышает вашу продуктивность на 50% и сокращает количество щелчков мышью на сотни каждый день!
Комментарии (26)
Оценок пока нет. Оцените первым!
Найдем адрес ячейки, содержащей максимальное значение в списке.
Пусть в столбце
А
имеется диапазон ячеек, содержащий числа.
Задача
Найдем адрес ячейки, содержащей максимальное значение в списке.
Решение
Ниже приведено 3 решения:
=
АДРЕС(ПОИСКПОЗ(МАКС(A:A);A:A;0);1;4)
=
«A»&ПОИСКПОЗ(МАКС(A:A);A:A;0)
=
ЯЧЕЙКА(«АДРЕС»;ИНДЕКС(A:A;ПОИСКПОЗ(МАКС(A:A);A:A;0)))
Если в диапазоне поиска имеется несколько значений, равных максимальному, то все вышеуказанные формулы вернут адрес значения идущего
первым сверху
.
Если необходимо найти адрес ячейки с минимальным значением, то функцию
МАКС()
нужно заменить на
МИН()
. Аналогично можно найти адрес ячейки, например, с третьим наибольшим значением в списке
=АДРЕС(ПОИСКПОЗ(НАИБОЛЬШИЙ(A:A;3);A:A;0);1;4)
Для вывода самого значения можно использовать, например, формулу
=ДВССЫЛ(АДРЕС(ПОИСКПОЗ(МАКС(A:A);A:A;0);1;4))
, но это бессмысленно, т.к. можно написать просто
МАКС(A:A)
Также можно определить позицию максимального значения в списке (только первого сверху):
=ПОИСКПОЗ(МАКС(Список);Список;0)
Имя
Список
представляет собой
Именованный диапазон
A7:A25
(см.
файл примера
).
Как правило, позиция значения в списке требуется для вывода значения из той же строки соседнего столбца. Это можно сделать, например, с помощью следующей формулы:
=ИНДЕКС(Товар;ПОИСКПОЗ(МАКС(Список);Список;0))
Имя
Товар
представляет собой
Именованный диапазон
B7:B25
.