Строка поиска по значению в excel

Skip to content

ИНДЕКС ПОИСКПОЗ как лучшая альтернатива ВПР

В этом руководстве показано, как использовать ИНДЕКС и ПОИСКПОЗ в Excel и чем они лучше ВПР.

В нескольких недавних статьях мы приложили немало усилий, чтобы объяснить основы функции ВПР новичкам и предоставить более сложные примеры формул ВПР опытным пользователям. А теперь я постараюсь если не отговорить вас от использования ВПР, то хотя бы показать вам альтернативный способ поиска нужных значений в Excel.

  • Краткий обзор функций ИНДЕКС и ПОИСКПОЗ
  • Как использовать формулу ИНДЕКС ПОИСКПОЗ
  • ИНДЕКС+ПОИСКПОЗ вместо ВПР?
  • Поиск справа налево
  • Двусторонний поиск в строках и столбцах
  • ИНДЕКС ПОИСКПОЗ для поиска по нескольким условиям
  • Как найти среднее, максимальное и минимальное значение
  • Что делать с ошибками поиска?

Для чего это нужно? Потому что функция ВПР имеет множество ограничений, которые могут помешать вам получить желаемый результат во многих ситуациях. С другой стороны, комбинация ПОИСКПОЗ ИНДЕКС более гибкая и имеет много замечательных возможностей, которые во многих отношениях превосходят ВПР.

Функции Excel ИНДЕКС и ПОИСКПОЗ — основы

Поскольку целью этого руководства является демонстрация альтернативного способа выполнения поиска в Excel с использованием комбинации функций ИНДЕКС и ПОИСКПОЗ, мы не будем подробно останавливаться на их синтаксисе и использовании. Тем более, что это подробно рассмотрено в других статьях, ссылки на которые вы можете найти в конце этого руководства. Мы рассмотрим лишь минимум, необходимый для понимания общей идеи, а затем подробно рассмотрим примеры формул, раскрывающие все преимущества использования ПОИСКПОЗ и ИНДЕКС вместо ВПР.

Функция ИНДЕКС

Функция ИНДЕКС (в английском варианте – INDEX) возвращает значение в массиве на основе указанных вами номеров строк и столбцов. Синтаксис функции ИНДЕКС прост:

ИНДЕКС(массив,номер_строки,[номер_столбца])

Вот простое объяснение каждого параметра:

  • массив — это диапазон ячеек, именованный диапазон или таблица.
  • номер_строки — это номер строки в массиве, из которого нужно вернуть значение. Если этот аргумент опущен, требуется следующий – номер_столбца.
  • номер_столбца — это номер столбца, из которого нужно вернуть значение. Если он опущен, требуется номер_строки.

Дополнительные сведения см. в статье Функция ИНДЕКС в Excel .

А вот пример формулы ИНДЕКС в самом простом виде:

=ИНДЕКС(A1:C10;2;3)

Формула выполняет поиск в ячейках с A1 по C10 и возвращает значение ячейки во 2-й строке и 3-м столбце, т. е. в ячейке C2.

Очень легко, правда? Однако при работе с реальными данными вы вряд ли когда-нибудь будете заранее знать, какие строки и столбцы вам нужны. Здесь вам пригодится ПОИСКПОЗ.

Функция ПОИСКПОЗ

Она ищет нужное значение в диапазоне ячеек и возвращает относительное положение этого значения в диапазоне.

Синтаксис функции ПОИСКПОЗ следующий:

ПОИСКПОЗ(искомое_значение, искомый_массив, [тип_совпадения])

  • искомое_значение — числовое или текстовое значение, которое вы ищете.
  • диапазон_поиска — диапазон ячеек, в которых будем искать.
  • тип_совпадения — указывает, следует ли искать точное соответствие или наиболее близкое совпадение:
    • 1 или опущено — находит наибольшее значение, которое меньше или равно искомому значению. Требуется сортировка массива поиска в порядке возрастания.
    • 0 — находит первое значение, точно равное искомому значению. В комбинации ИНДЕКС/ПОИСКПОЗ вам почти всегда нужно точное совпадение, поэтому вы чаще всего устанавливаете третий аргумент вашей функции в 0.
    • -1 — находит наименьшее значение, которое больше или равно искомому значению. Требуется сортировка массива поиска в порядке убывания.

Например, если диапазон B1:B3 содержит значения «яблоки», «апельсины», «лимоны», приведенная ниже формула возвращает число 3, поскольку «лимоны» — это третья по счету запись в этом диапазоне:

=ПОИСКПОЗ(«лимоны»;B1:B3;0)

Дополнительные сведения см . в статье Функция ПОИСКПОЗ в Excel .

На первый взгляд полезность функции ПОИСКПОЗ может показаться сомнительной. Кого волнует положение значения в диапазоне? Что мы действительно хотим определить, так это само значение.

Однако, относительная позиция искомого значения (т. е. номера строки и столбца, в которых оно находится) — это именно то, что нам нужно указать для аргументов номер_строки и номер_столбца функции ИНДЕКС. Как вы помните, ИНДЕКС может найти значение на пересечении заданной строки и столбца, но сама не может определить, какую именно строку и столбец ей нужно выбрать.

Вот поэтому совместное использование ИНДЕКС и ПОИСКПОЗ открывает перед нами массу возможностей для поиска в Excel.

Как использовать формулу ИНДЕКС ПОИСКПОЗ в Excel

Теперь, когда вы знаете основы, я считаю, что вы уже начали понимать, как ПОИСКПОЗ и ИНДЕКС работают вместе. Короче говоря, ИНДЕКС извлекает нужное значение по номерам столбцов и строк, а ПОИСКПОЗ предоставляет ей эти номера. Вот и все!

Для вертикального поиска вы используете функцию ПОИСКПОЗ только для определения номера строки, указывая диапазон столбцов непосредственно в самой формуле:

ИНДЕКС ( столбец для возврата значения ; ПОИСКПОЗ ( искомое значение ; столбец для поиска ; 0))

Все еще не совсем понимаете эту логику? Возможно, будет проще разобрать на примере. Предположим, у вас есть список национальных столиц и их население:

Чтобы найти население определенной столицы, скажем, Индии, используйте следующую формулу ПОИСКПОЗ ИНДЕКС:

=ИНДЕКС(C2:C10; ПОИСКПОЗ(“Индия”;A2:A10;0))

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

  • Функция ПОИСКПОЗ ищет искомое значение «Индия» в диапазоне A2:A10 и возвращает число 2, поскольку это слово занимает второе место в массиве поиска.
  • Этот номер поступает непосредственно в аргумент номер_строки функции ИНДЕКС, предписывая вернуть значение из этой строки.

Таким образом, приведенная выше формула превращается в ИНДЕКС(C2:C10;2), которая означает, что нужно искать в ячейках от C2 до C10 и извлекать значение из второй ячейки в этом диапазоне, то есть из C3, потому что мы начинаем отсчет со второй строки.

Но указывать название города в формуле не совсем правильно, так как для каждого нового поиска придется корректировать эту формулу. Введите его в какую-нибудь отдельную ячейку, скажем, F1, укажите ссылку на ячейку для ПОИСКПОЗ, и вы получите формулу динамического поиска:

=ИНДЕКС(C2:C10;ПОИСКПОЗ(F1;A2:A10;0))

Важное замечаниеКоличество строк в аргументе массив функции ИНДЕКС должно совпадать с количеством строк в аргументе просматриваемый_массив в ПОИСКПОЗ, иначе формула выдаст неверный результат.

Вы спросите: «А почему бы нам просто не использовать обычную формулу ВПР? Какой смысл тратить время на то, чтобы разобраться в хитросплетениях ИНДЕКС ПОИСКПОЗ в Excel?»

Вот как это будет выглядеть:

=ВПР(F1; A2:C10; 3; 0)

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

ИНДЕКС+ПОИСКПОЗ вместо ВПР?

Решая, какую функцию использовать для вертикального поиска, большинство знатоков Excel сходятся во мнении, что ПОИСКПОЗ+ИНДЕКС намного лучше, чем ВПР. Однако многие до сих пор остаются с ВПР, во-первых, потому что это проще, а, во-вторых, потому что они не до конца понимают все преимущества использования формулы ПОИСКПОЗ ИНДЕКС в Excel. Без такого понимания никто не захочет тратить свое время на изучение более сложного синтаксиса.

Ниже я укажу на ключевые преимущества ИНДЕКС ПОИСКПОЗ перед ВПР, а уж вам решать, является ли это достойным дополнением к вашему арсеналу знаний в Excel.

4 основные причины использовать ИНДЕКС ПОИСКПОЗ вместо ВПР

  1. Поиск справа налево. Как известно любому образованному пользователю, ВПР не может искать влево. Это означает, что искомое значение всегда должно находиться в крайнем левом столбце таблицы. А извлекать нужное значение мы будем из столбца, который находится правее. ИНДЕКС+ПОИСКПОЗ может легко выполнять поиск влево! Здесь это показано в действии: Как выполнить поиск значения слева в Excel .
  2. Можно безопасно вставлять или удалять столбцы. Формулы ВПР не работают или выдают неверные результаты, когда новый столбец удаляется из таблицы поиска или добавляется в нее, поскольку синтаксис ВПР требует указания порядкового номера столбца, из которого вы хотите извлечь данные. Естественно, когда вы добавляете или удаляете столбцы, этот номер в формуле автоматически не меняется, а нужный столбец уже оказывается на новом месте.

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

  1. Нет ограничений на размер искомого значения. При использовании функции ВПР общая длина ваших критериев поиска не может превышать 255 символов, иначе вы получите ошибку #ЗНАЧ!. Таким образом, если ваш набор данных содержит длинные строки, ИНДЕКС ПОИСКПОЗ — единственное работающее решение.
  2. Более высокая скорость обработки. Если ваши таблицы относительно небольшие, вряд ли будет какая-то существенная разница в производительности Excel. Но если ваши рабочие листы содержат сотни или тысячи строк и, следовательно, сотни или тысячи формул, ИНДЕКС ПОИСКПОЗ будет работать намного быстрее, чем ВПР. Причина в том, что Excel будет обрабатывать только столбцы поиска и возврата, а не весь массив таблицы.

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

ИНДЕКС ПОИСКПОЗ в Excel – примеры формул

Уяснив, почему все же стоит изучать ИНДЕКС ПОИСКПОЗ, давайте перейдем к самому интересному и посмотрим, как можно применить теоретические знания на практике.

Формула для поиска справа налево

Как уже упоминалось, ВПР не может получать значения слева от столбца поиска. Таким образом, если ваши значения поиска не находятся в самом левом столбце, нет никаких шансов, что формула ВПР принесет вам желаемый результат. Функция ПОИСКПОЗ ИНДЕКС в Excel более универсальна и не имеет особого значения, где расположены столбцы поиска и возврата.

Для этого примера мы добавим столбец «Ранг» слева от нашей основной таблицы и попытаемся выяснить, какое место занимает столица России по численности населения среди других перечисленных  столиц.

Записав искомое значение в G1, используйте следующую формулу для поиска в C2:C10 и возврата соответствующего значения из A2:A10:

=ИНДЕКС(A2:A10; ПОИСКПОЗ(G1;C2:C10;0))

СоветЕсли вы планируете использовать формулу ПОИСКПОЗ ИНДЕКС более чем для одной ячейки, обязательно зафиксируйте оба диапазона абсолютными ссылками  (например, $A$2:$A$10 и $C$2:$C$10), чтобы они не изменялись при копировании формулы.

Двусторонний поиск в строках и столбцах

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

Это может показаться сложным, но формула очень похожа на базовую функцию ПОИСКПОЗ ИНДЕКС в Excel, но с одним отличием. 

Просто используйте две функции ПОИСКПОЗ, вложенных друг в друга: одну – для получения номера строки, а другую – для получения номера столбца. 

ИНДЕКС(массив; ПОИСКПОЗ(значение_поиска1 ; столбец_поиска ; 0); ПОИСКПОЗ(значение_поиска2 ; столбец_поиска ; 0))

А теперь, пожалуйста, взгляните на приведенную ниже таблицу и давайте составим формулу двумерного поиска, чтобы найти население (в миллионах) в данной стране за данный год.

С целевой страной в G1 (значение_поиска1) и целевым годом в G2 (значение_поиска2) формула принимает следующий вид:

=ИНДЕКС(B2:D11; ПОИСКПОЗ(G1;A2:A11;0); ПОИСКПОЗ(G2;B1:D1;0))

Как работает эта формула?

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

ПОИСКПОЗ(G1;A2:A11;0); – ищет в A2:A11 значение из ячейки G1 («США») и возвращает его позицию, которая равна 3.

ПОИСКПОЗ(G2;B1:D1;0) – просматривает диапазон B1:D1, чтобы получить позицию значения из ячейки G2 («2015»), которая равна 3.

Найденные выше номера строк и столбцов становятся соответствующими аргументами функции ИНДЕКС:

ИНДЕКС(B2:D11, 3, 3)

В результате вы получите значение на пересечении 3-й строки и 3-го столбца в диапазоне B2:D11, то есть из D4. Несложно? 

ИНДЕКС ПОИСКПОЗ для поиска по нескольким условиям

Если у вас была возможность прочитать наши материалы по ВПР в Excel, вы, вероятно, уже протестировали формулу для ВПР с несколькими условиями . Однако существенным недостатком этого подхода является необходимость добавления вспомогательного столбца. Хорошей новостью является то, что функция ПОИСКПОЗ ИНДЕКС в Excel также может выполнять поиск по нескольким условиям без изменения или реструктуризации исходных данных!

Вот общая формула ИНДЕКС ПОИСКПОЗ с несколькими критериями:

{=ИНДЕКС( диапазон_возврата; ПОИСКПОЗ (1; ( критерий1 = диапазон1 ) * ( критерий2 = диапазон2 ); 0))}

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

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

Следующая формула ИНДЕКС ПОИСКПОЗ отлично работает:

=ИНДЕКС(C2:C10; ПОИСКПОЗ(1; (F1=A2:A10) * (F2=B2:B10); 0))

Где C2:C10 — это диапазон, из которого возвращается значение, F1 — это критерий1, A2:A10 — это диапазон для сравнения с критерием 1, F2 — это критерий 2, а B2:B10 — это диапазон для сравнения с критерием 2.

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

Рис5

Если вы не хотите использовать формулы массива, добавьте в формулу в F4 еще одну функцию ИНДЕКС и завершите ее ввод обычным нажатием Enter:

=ИНДЕКС(C2:C10; ПОИСКПОЗ(1; ИНДЕКС((F1=A2:A10) * (F2=B2:B10); 0; 1); 0))

Разберем пошагово, как это работает.

Здесь используется тот же подход, что и в обычном сочетании ИНДЕКС ПОИСКПОЗ, где просматривается один столбец. Чтобы оценить несколько критериев, вы создаете два или более массива значений ИСТИНА и ЛОЖЬ, которые представляют совпадения и несовпадения для каждого отдельного критерия, а затем перемножаете соответствующие элементы этих массивов. Операция умножения преобразует ИСТИНА и ЛОЖЬ в 1 и 0 соответственно и создает массив, в котором единицы соответствуют строкам, которые удовлетворяют всем условиям. Функция ПОИСКПОЗ со значением поиска 1 находит первую «1» в массиве и передает ее позицию в ИНДЕКС, которая возвращает значение в этой позиции из указанного столбца.

Вторая формула без массива основана на способности функции ИНДЕКС работать с массивами. Второй вложенный ИНДЕКС имеет 0 в номер_строки , так что он будет передавать весь массив столбцов в ПОИСКПОЗ.

Среднее, максимальное и минимальное значение при помощи ИНДЕКС ПОИСКПОЗ

Microsoft Excel имеет специальные функции для поиска минимального, максимального и среднего значения в диапазоне. Но что, если вам нужно получить значение из другой ячейки, связанной с этими значениями? Например,  получить название города с максимальным населением или узнать товар с минимальными продажами? В этом случае используйте функцию МАКС , МИН или СРЗНАЧ вместе с ИНДЕКС ПОИСКПОЗ.

Максимальное значение.

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

=ИНДЕКС(B2:B10; ПОИСКПОЗ(МАКС(C2:C10); C2:C10; 0))

Скриншот с примером находится чуть ниже.

Минимальное значение

Теперь найдём город с самым маленьким населением в списке. Чтобы найти наименьшее число в столбце С и получить соответствующее ему значение из столбца В:

=ИНДЕКС(B2:B10; ПОИСКПОЗ(МИН(C2:C10); C2:C10; 0))

Ближайшее к среднему

Теперь мы находим город, население которого наиболее близко к среднему значению. Чтобы вычислить позицию, наиболее близкую к среднему значению показателя, рассчитанному из D2:D10, и получить соответствующее значение из столбца C, используйте следующую формулу:

=ИНДЕКС(B2:B10; ПОИСКПОЗ(СРЗНАЧ(C2:C10); C2:C10; -1 ))

В зависимости от того, как организованы ваши данные, укажите 1 или -1 для третьего аргумента (тип_совпадения) функции ПОИСКПОЗ:

  • Если ваш столбец поиска (столбец D в нашем случае) отсортирован по возрастанию , поставьте 1. Формула вычислит наибольшее значение, которое меньше или равно среднему значению.
  • Если ваш столбец поиска отсортирован по убыванию , введите -1. Формула вычислит наименьшее значение, которое больше или равно среднему значению.
  • Если ваш массив поиска содержит значение , точно равное среднему, вы можете ввести 0 для точного совпадения. Никакой сортировки не требуется.

В нашем примере данные в столбце D отсортированы в порядке убывания, поэтому мы используем -1 для типа соответствия. В результате мы получаем «Токио», так как его население (13 189 000) является ближайшим, превышающим среднее значение (12 269 006).

Что делать с ошибками поиска?

Как вы, наверное, заметили, если формула ИНДЕКС ПОИСКПОЗ в Excel не может найти искомое значение, она выдает ошибку #Н/Д. Если вы хотите заменить это стандартное сообщение чем-то более информативным, оберните формулу ПОИСКПОЗ ИНДЕКС в функцию ЕСНД . Например:

=ЕСНД(ИНДЕКС(C2:C10; ПОИСКПОЗ(F1;A2:A10;0)); «Не найдено»)

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

Если вы хотите перехватывать все ошибки, а не только #Н/Д, используйте функцию ЕСЛИОШИБКА вместо ЕСНД:

=ЕСЛИОШИБКА(ИНДЕКС(C2:C10; ПОИСКПОЗ(F1;A2:A10;0)); «Что-то пошло не так!»)

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

Итак, еще раз об основных преимуществах формулы ИНДЕКС ПОИСКПОЗ.

  • Возможен ли «левый» поиск?

  • Повлияет ли на результат вставка и удаление столбцов?

    Вы можете вставлять и удалять столько столбцов, сколько хотите. На результат ИНДЕКС ПОИСКПОЗ это не повлияет.

  • Возможен ли поиск по строкам и столбцам?

    Можно сначала найти подходящий столбец, а уж потом извлечь из него значение. Общий вид формулы:
    ИНДЕКС(массив; ПОИСКПОЗ(значение_поиска1 ; столбец_поиска ; 0); ПОИСКПОЗ(значение_поиска2 ; столбец_поиска ; 0))
    Подробную инструкцию смотрите здесь.

  • Как сделать поиск ИНДЕКС ПОИСКПОЗ по нескольким условиям?

    Можно выполнять поиск по двум или более условиям без добавления дополнительных столбцов. Вот формула массива, которая решит проблему:
    {=ИНДЕКС( диапазон_возврата; ПОИСКПОЗ (1; ( критерий1 = диапазон1 ) * ( критерий2 = диапазон2 ); 0))}

Вот как можно использовать ИНДЕКС и ПОИСКПОЗ в Excel. Я надеюсь, что наши примеры формул окажутся полезными для вас.

Вот еще несколько статей по этой теме:

Совет: Попробуйте использовать новые функции ПРОСМОТРX и XMATCH, а также улучшенные версии функций, описанные в этой статье. Эти новые функции работают в любом направлении и возвращают точные совпадения по умолчанию, что упрощает и упрощает работу с ними по сравнению с предшественниками.

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

Функции ВВ., а также ИНДЕКС и ВЫБОРПОЗ — одни из самых полезных функций в Excel.

Примечание: Мастер подметок больше не доступен в Excel.

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

=ВПР(B2;C2:E7,3,ИСТИНА)

В этом примере B2 является первым аргументом элементом данных, который требуется для работы функции. В случае СРОТ ВЛ.В.ОВ этот первый аргумент является искомой значением. Этот аргумент может быть ссылкой на ячейку или фиксированным значением, таким как «кузьмина» или 21 000. Вторым аргументом является диапазон ячеек C2–:E7, в котором нужно найти и найти значение. Третий аргумент — это столбец в диапазоне ячеек, содержащий ищите значение.

Четвертый аргумент необязателен. Введите истина или ЛОЖЬ. Если ввести ИСТИНА или оставить аргумент пустым, функция возвращает приблизительное совпадение значения, указанного в качестве первого аргумента. Если ввести ЛОЖЬ, функция будет соответствовать значению, заведомо первому аргументу. Другими словами, если оставить четвертый аргумент пустым или ввести ИСТИНА, это обеспечивает большую гибкость.

В этом примере показано, как работает функция. При вводе значения в ячейку B2 (первый аргумент) в результате поиска в ячейках диапазона C2:E7 (2-й аргумент) выполняется поиск в ней и возвращается ближайшее приблизительное совпадение из третьего столбца в диапазоне — столбца E (третий аргумент).

Типичный пример использования функции ВПР

Четвертый аргумент пуст, поэтому функция возвращает приблизительное совпадение. Иначе потребуется ввести одно из значений в столбец C или D, чтобы получить какой-либо результат.

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

Использование индекса и MATCH вместо ВРОТ

При использовании функции ВПРАВО существует ряд ограничений, которые действуют только при использовании функции ВПРАВО. Это означает, что столбец, содержащий и look up, всегда должен быть расположен слева от столбца, содержащего возвращаемого значения. Теперь, если ваша таблица не построена таким образом, не используйте В ПРОСМОТР. Используйте вместо этого сочетание функций ИНДЕКС и MATCH.

В данном примере представлен небольшой список, в котором искомое значение (Воронеж) не находится в крайнем левом столбце. Поэтому мы не можем использовать функцию ВПР. Для поиска значения «Воронеж» в диапазоне B1:B11 будет использоваться функция ПОИСКПОЗ. Оно найдено в строке 4. Затем функция ИНДЕКС использует это значение в качестве аргумента поиска и находит численность населения Воронежа в четвертом столбце (столбец D). Использованная формула показана в ячейке A14.

Использование функций ИНДЕКС и ПОИСКПОЗ для поиска значения

Дополнительные примеры использования индексов и MATCH вместо В ПРОСМОТР см. в статье билла Https://www.mrexcel.com/excel-tips/excel-vlookup-index-match/ Билла Джилена (Bill Jelen), MVP корпорации Майкрософт.

Попробуйте попрактиковаться

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

Пример работы с ВЛОКОНПОМ

Скопируйте следующие данные в пустую таблицу.

Совет: Прежде чем врезать данные в Excel, установите для столбцов A–C ширину в 250 пикселей и нажмите кнопку «Перенос текста» (вкладка «Главная», группа «Выравнивание»).

Плотность

Вязкость

Температура

0,457

3,55

500

0,525

3,25

400

0,606

2,93

300

0,675

2,75

250

0,746

2,57

200

0,835

2,38

150

0,946

2,17

100

1,09

1,95

50

1,29

1,71

0

Формула

Описание

Результат

=ВПР(1,A2:C10,2)

Используя приблизительное соответствие, функция ищет в столбце A значение 1, находит наибольшее значение, которое меньше или равняется 1 и составляет 0,946, а затем возвращает значение из столбца B в той же строке.

2,17

=ВПР(1,A2:C10,3,ИСТИНА)

Используя приблизительное соответствие, функция ищет в столбце A значение 1, находит наибольшее значение, которое меньше или равняется 1 и составляет 0,946, а затем возвращает значение из столбца C в той же строке.

100

=ВПР(0,7,A2:C10,3,ЛОЖЬ)

Используя точное соответствие, функция ищет в столбце A значение 0,7. Поскольку точного соответствия нет, возвращается сообщение об ошибке.

#Н/Д

=ВПР(0,1,A2:C10,2,ИСТИНА)

Используя приблизительное соответствие, функция ищет в столбце A значение 0,1. Поскольку 0,1 меньше наименьшего значения в столбце A, возвращается сообщение об ошибке.

#Н/Д

=ВПР(2,A2:C10,2,ИСТИНА)

Используя приблизительное соответствие, функция ищет в столбце A значение 2, находит наибольшее значение, которое меньше или равняется 2 и составляет 1,29, а затем возвращает значение из столбца B в той же строке.

1,71

Пример ГВ.Г.В.В.

Скопируйте всю таблицу и вставьте ее в ячейку A1 пустого листа Excel.

Совет: Прежде чем врезать данные в Excel, установите для столбцов A–C ширину в 250 пикселей и нажмите кнопку «Перенос текста» (вкладка «Главная», группа «Выравнивание»).

Оси

Подшипники

Болты

4

4

9

5

7

10

6

8

11

Формула

Описание

Результат

=ГПР(«Оси»;A1:C4;2;ИСТИНА)

Поиск слова «Оси» в строке 1 и возврат значения из строки 2, находящейся в том же столбце (столбец A).

4

=ГПР(«Подшипники»;A1:C4;3;ЛОЖЬ)

Поиск слова «Подшипники» в строке 1 и возврат значения из строки 3, находящейся в том же столбце (столбец B).

7

=ГПР(«П»;A1:C4;3;ИСТИНА)

Поиск буквы «П» в строке 1 и возврат значения из строки 3, находящейся в том же столбце. Так как «П» найти не удалось, возвращается ближайшее из меньших значений: «Оси» (в столбце A).

5

=ГПР(«Болты»;A1:C4;4)

Поиск слова «Болты» в строке 1 и возврат значения из строки 4, находящейся в том же столбце (столбец C).

11

=ГПР(3;{1;2;3:»a»;»b»;»c»;»d»;»e»;»f»};2;ИСТИНА)

Поиск числа 3 в трех строках константы массива и возврат значения из строки 2 того же (в данном случае — третьего) столбца. Константа массива содержит три строки значений, разделенных точкой с запятой (;). Так как «c» было найдено в строке 2 того же столбца, что и 3, возвращается «c».

c

Примеры индекса и match

В последнем примере функции ИНДЕКС и MATCH совместно возвращают номер счета с наиболее ранней датой и соответствующую дату для каждого из пяти городов. Так как дата возвращается как число, для ее формата используется функция ТЕКСТ. Функция ИНДЕКС использует результат, возвращенный функцией ПОИСКПОЗ, как аргумент. Сочетание функций ИНДЕКС и ПОИСКПОЗ используется в каждой формуле дважды — сперва для возврата номера счета, а затем для возврата даты.

Скопируйте всю таблицу и вставьте ее в ячейку A1 пустого листа Excel.

Совет: Перед тем как вировать данные в Excel, установите для столбцов A–D ширину в 250 пикселей и нажмите кнопку «Перенос текста» (вкладка «Главная», группа «Выравнивание»).

Счет

Город

Дата выставления счета

Счет с самой ранней датой по городу, с датой

3115

Казань

07.04.12

=»Казань = «&ИНДЕКС($A$2:$C$33,ПОИСКПОЗ(«Казань»,$B$2:$B$33,0),1)& «, Дата выставления счета: » & ТЕКСТ(ИНДЕКС($A$2:$C$33,ПОИСКПОЗ(«Казань»,$B$2:$B$33,0),3),»m/d/yy»)

3137

Казань

09.04.12

=»Орел = «&ИНДЕКС($A$2:$C$33,ПОИСКПОЗ(«Орел»,$B$2:$B$33,0),1)& «, Дата выставления счета: » & ТЕКСТ(ИНДЕКС($A$2:$C$33,ПОИСКПОЗ(«Орел»,$B$2:$B$33,0),3),»m/d/yy»)

3154

Казань

11.04.12

=»Челябинск = «&ИНДЕКС($A$2:$C$33,ПОИСКПОЗ(«Челябинск»,$B$2:$B$33,0),1)& «, Дата выставления счета: » & ТЕКСТ(ИНДЕКС($A$2:$C$33,ПОИСКПОЗ(«Челябинск»,$B$2:$B$33,0),3),»m/d/yy»)

3191

Казань

21.04.12

=»Нижний Новгород = «&ИНДЕКС($A$2:$C$33,ПОИСКПОЗ(«Нижний Новгород»,$B$2:$B$33,0),1)& «, Дата выставления счета: » & ТЕКСТ(ИНДЕКС($A$2:$C$33,ПОИСКПОЗ(«Нижний Новгород»,$B$2:$B$33,0),3),»m/d/yy»)

3293

Казань

25.04.12

=»Москва = «&ИНДЕКС($A$2:$C$33,ПОИСКПОЗ(«Москва»,$B$2:$B$33,0),1)& «, Дата выставления счета: » & ТЕКСТ(ИНДЕКС($A$2:$C$33,ПОИСКПОЗ(«Москва»,$B$2:$B$33,0),3),»m/d/yy»)

3331

Казань

27.04.12

3350

Казань

28.04.12

3390

Казань

01.05.12

3441

Казань

02.05.12

3517

Казань

08.05.12

3124

Орел

09.04.12

3155

Орел

11.04.12

3177

Орел

19.04.12

3357

Орел

28.04.12

3492

Орел

06.05.12

3316

Челябинск

25.04.12

3346

Челябинск

28.04.12

3372

Челябинск

01.05.12

3414

Челябинск

01.05.12

3451

Челябинск

02.05.12

3467

Челябинск

02.05.12

3474

Челябинск

04.05.12

3490

Челябинск

05.05.12

3503

Челябинск

08.05.12

3151

Нижний Новгород

09.04.12

3438

Нижний Новгород

02.05.12

3471

Нижний Новгород

04.05.12

3160

Москва

18.04.12

3328

Москва

26.04.12

3368

Москва

29.04.12

3420

Москва

01.05.12

3501

Москва

06.05.12

Функции ИНДЕКС и ПОИСКПОЗ в Excel – лучшая альтернатива для ВПР

​Смотрите также​ неоценимую помощь ПОИСКПОЗ.​​Результат поиска:​​Скачать пример поиска значения​​ ВПР (Вертикальный ПРосмотр)​​Просматриваемый_массив​ ячейки​Город​1,09​​ другого диапазона. Рассмотрим​​Если​#VALUE!​ в 5-ом столбце.​=INDEX($C$2:$C$10,MATCH(MIN($D$2:I$10),$D$2:D$10,0))​значение, указанное в​и​​lookup_value​​Этот учебник рассказывает о​

​ Имеем сводную таблицу,​Функция имеет следующую синтаксическую​ в столбце и​ указывается ссылка на​должен быть упорядочен​​D4​​Дата выставления счета​1,95​ пример.​тип_сопоставления​(#ЗНАЧ!). Если Вы​Теперь вставляем эти формулы​​=ИНДЕКС($C$2:$C$10;ПОИСКПОЗ(МИН($D$2:I$10);$D$2:D$10;0))​​ ячейке​ИНДЕКС​(искомое_значение) – это​ главных преимуществах функций​

​ в которой ведется​ запись:​ строке Excel​​ ячейку где находится​​ по возрастанию: …,​, чтобы быстро скопировать​Самая ранняя счет по​50​Найдем количество заданного товара​равен -1, то​ хотите заменить такое​ в функцию​Результат: Lima​​A2​​?​​ число или текст,​​ИНДЕКС​ учет купленной продукции.​=ПОИСКПОЗ(искомое_значение;просматриваемый_массив;[тип_сопоставления])​Читайте также: Поиск значения​ критерий поиска. Во​​ -2, -1, 0,​​ формулу в остальные​

ИНДЕКС и ПОИСКПОЗ в Excel

  • ​ городу, с датой​1,29​
  • ​ на определенном складе.​ функция ПОИСКПОЗ() находит​
  • ​ сообщение на что-то​ИНДЕКС​
  • ​3.​:​
    • ​=VLOOKUP(«Japan»,$B$2:$D$2,3)​ который Вы ищите.​
    • ​и​Наша цель: создать карточку​
    • ​Описание аргументов:​ в диапазоне таблицы​
    • ​ втором аргументе указывается​
    • ​ 1, 2, …,​ ячейки столбца.​

Базовая информация об ИНДЕКС и ПОИСКПОЗ

​3115​1,71​ Для этого используем​​ наименьшее значение, которое​​ более понятное, то​​и вуаля:​​AVERAGE​=VLOOKUP(A2,B5:D10,3,FALSE)​=ВПР(«Japan»;$B$2:$D$2;3)​ Аргумент может быть​ПОИСКПОЗ​

​ заказа, где по​искомое_значение – обязательный аргумент,​ Excel по столбцам​ диапазон ячеек для​ A-Z, ЛОЖЬ, ИСТИНА.​Объяснение:​​Казань​​0​​ формулу​​ больше либо равно​​ можете вставить формулу​​=INDEX($A$1:$E$11,MATCH($H$2,$B$1:$B$11,0),MATCH($H$3,$A$1:$E$1,0))​

ИНДЕКС – синтаксис и применение функции

​(СРЗНАЧ). Формула вычисляет​​=ВПР(A2;B5:D10;3;ЛОЖЬ)​​В данном случае –​ значением, в том​в Excel, которые​ номеру артикула можно​ принимающий текстовые, числовые​ и строкам​

​ просмотра в процессе​
​0​

​Функция​07.04.12​

  • ​Формула​​=ИНДЕКС(B67:E71;ПОИСКПОЗ(A74;A67:A71;0);ПОИСКПОЗ(C74;B66:E66;0))​ чем​ с​=ИНДЕКС($A$1:$E$11;ПОИСКПОЗ($H$2;$B$1:$B$11;0);ПОИСКПОЗ($H$3;$A$1:$E$1;0))​
  • ​ среднее в диапазоне​​Формула не будет работать,​ смысла нет! Цель​ числе логическим, или​ делают их более​ будет видеть, что​ значения, а также​По сути содержимое диапазона​​ поиска. В третьем​​Функция​
  • ​ROW​​=»Казань = «&ИНДЕКС($A$2:$C$33,ПОИСКПОЗ(«Казань»,$B$2:$B$33,0),1)& «,​Описание​В файле примера, соответствующий​искомое_значениеПросматриваемый_массив​ИНДЕКС​Если заменить функции​D2:D10​​ если значение в​​ этого примера –​

​ ссылкой на ячейку.​ привлекательными по сравнению​​ это за товар,​​ данные логического и​ нас вообще не​ аргументе функции ВПР​ПОИСКПОЗ​

​(СТРОКА) возвращает номер​​ Дата выставления счета:​​Результат​

​ столбец и строка​
​должен быть упорядочен​

​и​ПОИСКПОЗ​​, затем находит ближайшее​​ ячейке​ исключительно демонстрационная, чтобы​​lookup_array​​ с​​ какой клиент его​​ ссылочного типов, который​ интересует, нам нужен​​ должен указываться номер​​находит первое значение,​

​ строки ячейки. Если​ » & ТЕКСТ(ИНДЕКС($A$2:$C$33,ПОИСКПОЗ(«Казань»,$B$2:$B$33,0),3),»m/d/yy»)​=ВПР(1,A2:C10,2)​ выделены с помощью​ по убыванию: ИСТИНА,​ПОИСКПОЗ​на значения, которые​​ к нему и​​A2​

ПОИСКПОЗ – синтаксис и применение функции

​ Вы могли понять,​​(просматриваемый_массив) – диапазон​​ВПР​ приобрел, сколько было​ используется в качестве​ просто счетчик строк.​ столбца, из которого​ равное аргументу​

​ мы разделим номер​​3137​​Используя приблизительное соответствие, функция​ Условного форматирования.​ ЛОЖЬ, Z-A, …,​в функцию​​ они возвращают, формула​​ возвращает значение из​длиннее 255 символов.​ как функции​

​ ячеек, в котором​
​. Вы увидите несколько​

​ куплено и по​​ критерия поиска (для​​ То есть изменить​ следует взять значение​

​искомое_значение​
​ строки на крупное​

  • ​Казань​​ ищет в столбце​СОВЕТ: Подробнее о поиске​ 2, 1, 0,​ЕСЛИОШИБКА​ станет легкой и​ столбца​ Вместо неё Вам​
  • ​ПОИСКПОЗ​​ происходит поиск.​ примеров формул, которые​ какой общей стоимости.​
  • ​ сопоставления величин или​​ аргументы на: СТРОКА(B2:B11)​ на против строки​​.​​ число и прибавим​09.04.12​ A значение 1,​
    • ​ позиций можно прочитать​​ -1, -2, …,​​.​​ понятной:​C​ нужно использовать аналогичную​и​match_type​ помогут Вам легко​ Сделать это поможет​
    • ​ нахождения точного совпадения);​​ или СТРОКА(С2:С11) –​ с именем Товар​Просматриваемый_массив​​ это значение к​​=»Орел = «&ИНДЕКС($A$2:$C$33,ПОИСКПОЗ(«Орел»,$B$2:$B$33,0),1)& «,​​ находит наибольшее значение,​​ в соответствующем разделе​ и так далее.​Синтаксис функции​​=INDEX($A$1:$E$11,4,5))​​той же строки:​​ формулу​​ИНДЕКС​
    • ​(тип_сопоставления) – этот​​ справиться со многими​ функция ИНДЕКС совместно​просматриваемый_массив – обязательный аргумент,​ это никак не​ 4. Но так​может быть не​ результату функции​ Дата выставления счета:​

​ которое меньше или​ сайта: Поиск позиции.​​Функция ПОИСКПОЗ() не различает​​ЕСЛИОШИБКА​=ИНДЕКС($A$1:$E$11;4;5))​=INDEX($C$2:$C$10,MATCH(AVERAGE($D$2:D$10),$D$2:D$10,1))​ИНДЕКС​работают в паре.​

​ аргумент сообщает функции​ сложными задачами, перед​ с ПОИСКПОЗ.​ принимающий данные ссылочного​ повлияет на качество​ как нам заранее​ упорядочен.​SEARCH​​ » & ТЕКСТ(ИНДЕКС($A$2:$C$33,ПОИСКПОЗ(«Орел»,$B$2:$B$33,0),3),»m/d/yy»)​​ равняется 1 и​​С помощью функций ПОИСКПОЗ()​​ РеГИстры при сопоставлении​​очень прост:​​Эта формула возвращает значение​=ИНДЕКС($C$2:$C$10;ПОИСКПОЗ(СРЗНАЧ($D$2:D$10);$D$2:D$10;1))​​/​​ Последующие примеры покажут​ПОИСКПОЗ​ которыми функция​Для начала создадим выпадающий​ типа (ссылки на​ формулы. Главное, что​ не известен этот​-1​

Как использовать ИНДЕКС и ПОИСКПОЗ в Excel

​(ПОИСК), у нас​3154​ составляет 0,946, а​ и ИНДЕКС() можно​ текстов.​IFERROR(value,value_if_error)​​ на пересечении​​Результат: Moscow​​ПОИСКПОЗ​​ Вам истинную мощь​​, хотите ли Вы​​ВПР​ список для поля​ диапазон ячеек) или​ в этих диапазонах​​ номер мы с​​Функция​ всегда будут получаться​Казань​ затем возвращает значение​

​ заменить функцию ВПР(),​Если функция ПОИСКПОЗ() не​​ЕСЛИОШИБКА(значение;значение_если_ошибка)​​4-ой​​Используя функцию​​:​

​ связки​ найти точное или​бессильна.​
​ АРТИКУЛ ТОВАРА, чтобы​ константу массива, в​ по 10 строк,​

​ помощью функции СТОЛБЕЦ​ПОИСКПОЗ​ уникальные значения, а​11.04.12​ из столбца B​

ИНДЕКС и ПОИСКПОЗ в Excel

​ об этом читайте​ находит соответствующего значения,​Где аргумент​строки и​

​СРЗНАЧ​
​=INDEX(D5:D10,MATCH(TRUE,INDEX(B5:B10=A2,0),0))​

​ИНДЕКС​ приблизительное совпадение:​В нескольких недавних статьях​

  • ​ не вводить цифры​​ которых выполняется поиск​​ как и в​ создаем массив номеров​​находит наименьшее значение,​​ небольшой прирост не​=»Челябинск = «&ИНДЕКС($A$2:$C$33,ПОИСКПОЗ(«Челябинск»,$B$2:$B$33,0),1)& «,​​ в той же​​ в статье о​​ то возвращается значение​​value​5-го​в комбинации с​
  • ​=ИНДЕКС(D5:D10;ПОИСКПОЗ(ИСТИНА;ИНДЕКС(B5:B10=A2;0);0))​​и​​1​​ мы приложили все​​ с клавиатуры, а​​ позиции элемента согласно​​ таблице. И нумерация​ столбцов для диапазона​ которое больше или​ повлияет на ранжирование.​ Дата выставления счета:​

    ​ строке.​
    ​ функции ВПР().​

    ​ ошибки #Н/Д.​(значение) – это​столбца в диапазоне​​ИНДЕКС​​4. Более высокая скорость​​ПОИСКПОЗ​​или​ усилия, чтобы разъяснить​ выбирать их. Для​ критерию, заданному первым​​ начинается со второй​​ B4:G15.​ равно значению аргумента​ Теперь значение для​

​ » & ТЕКСТ(ИНДЕКС($A$2:$C$33,ПОИСКПОЗ(«Челябинск»,$B$2:$B$33,0),3),»m/d/yy»)​2,17​

ИНДЕКС и ПОИСКПОЗ в Excel

​Примечание:​Произведем поиск позиции в​ значение, проверяемое на​​A1:E11​​и​ работы.​​, которая легко справляется​​не указан​​ начинающим пользователям основы​​ этого кликаем в​​ аргументом функции;​​ строки!​Это позволяет функции ВПР​

​искомое_значение​ «United States» составляет​3191​​=ВПР(1,A2:C10,3,ИСТИНА)​​Мы стараемся как​ НЕ сортированном списке​ предмет наличия ошибки​, то есть значение​​ПОИСКПОЗ​​Если Вы работаете​​ с многими сложными​​– находит максимальное​

​ функции​
​ соответствующую ячейку (у​

​[тип_сопоставления] – необязательный для​Функция ПОИСКПОЗ в Excel​ собрать целый массив​.​ 1,00006, а для​Казань​​Используя приблизительное соответствие, функция​​ можно оперативнее обеспечивать​​ текстовых значений (диапазон​​ (в нашем случае​ ячейки​, в качестве третьего​ с небольшими таблицами,​​ ситуациями, когда​​ значение, меньшее или​​ВПР​​ нас это F13),​ заполнения аргумент в​ используется для поиска​​ значений. В результате​​Просматриваемый_массив​

Почему ИНДЕКС/ПОИСКПОЗ лучше, чем ВПР?

​ «United Kingdom» –​21.04.12​ ищет в столбце​ вас актуальными справочными​​B7:B13​​ – результат формулы​​E4​​ аргумента функции​​ то разница в​​ВПР​ равное искомому. Просматриваемый​и показать примеры​​ затем выбираем вкладку​​ виде числового значения,​ точного совпадения или​ в памяти хранится​должен быть упорядочен​ 1,00009. Кроме этого​=»Нижний Новгород = «&ИНДЕКС($A$2:$C$33,ПОИСКПОЗ(«Нижний​ A значение 1,​​ материалами на вашем​​)​​ИНДЕКС​​. Просто? Да!​​ПОИСКПОЗ​​ быстродействии Excel будет,​оказывается в тупике.​ массив должен быть​ более сложных формул​

​ ДАННЫЕ – ПРОВЕРКА​ определяющего способ поиска​​ ближайшего (меньшего или​​ все соответствующие значения​​ по убыванию: ИСТИНА,​​ мы добавили функцию​ Новгород»,$B$2:$B$33,0),1)& «, Дата​ находит наибольшее значение,​​ языке. Эта страница​​Столбец Позиция приведен для​​/​​В учебнике по​​чаще всего нужно​​ скорее всего, не​

4 главных преимущества использования ПОИСКПОЗ/ИНДЕКС в Excel:

​Решая, какую формулу использовать​​ упорядочен по возрастанию,​ для продвинутых пользователей.​​ ДАННЫХ. В открывшемся​​ в диапазоне ячеек​ большего заданному в​ каждому столбцу по​ ЛОЖЬ, Z-A, …,​IFERROR​ выставления счета: «​ которое меньше или​ переведена автоматически, поэтому​​ наглядности и не​​ПОИСКПОЗ​​ВПР​​ будет указывать​ заметная, особенно в​ для вертикального поиска,​ то есть от​ Теперь мы попытаемся,​ окне в пункте​ или массиве. Может​ зависимости от типа​ строке Товар 4​

​ 2, 1, 0,​(ЕСЛИОШИБКА). Если ячейка​​ & ТЕКСТ(ИНДЕКС($A$2:$C$33,ПОИСКПОЗ(«Нижний Новгород»,$B$2:$B$33,0),3),»m/d/yy»)​​ равняется 1 и​​ ее текст может​ влияет на вычисления.​); а аргумент​мы показывали пример​1​ последних версиях. Если​​ большинство гуру Excel​​ меньшего к большему.​ если не отговорить​ ТИП ДАННЫХ выбираем​ принимать следующие значения:​​ сопоставления, указанного в​​ (а именно: 360;​ -1, -2, …​ содержит ошибку, к​3293​ составляет 0,946, а​

​ содержать неточности и​Формула для поиска позиции​​value_if_error​​ формулы с функцией​или​​ же Вы работаете​​ считают, что​0​​ Вас от использования​​ СПИСОК. А в​​-1 – поиск наименьшего​​ качестве аргумента) значения​​ 958; 201; 605;​​ и т. д.​

​ примеру, когда строка​
​Казань​

​ затем возвращает значение​ грамматические ошибки. Для​ значения Груши: =ПОИСКПОЗ(«груши»;B7:B13;0)​​(значение_если_ошибка) – это​​ВПР​​-1​​ с большими таблицами,​ИНДЕКС​​– находит первое​​ВПР​​ качестве источника выделяем​​ ближайшего значения заданному​ заданному в массиве​ 462; 832). После​

​Функция​​ не может быть​​25.04.12​​ из столбца C​​ нас важно, чтобы​Формула находит первое значение​ значение, которое нужно​для поиска по​в случае, если​ которые содержат тысячи​/​ значение, равное искомому.​, то хотя бы​ столбец с артикулами,​ аргументом искомое_значение в​ или диапазоне ячеек​ чего функции МАКС​ПОИСКПОЗ​ найдена, возвращается пустая​=»Москва = «&ИНДЕКС($A$2:$C$33,ПОИСКПОЗ(«Москва»,$B$2:$B$33,0),1)& «,​ в той же​​ эта статья была​​ сверху и выводит​

​ возвратить, если формула​ нескольким критериям. Однако,​​ Вы не уверены,​​ строк и сотни​​ПОИСКПОЗ​ Для комбинации​ показать альтернативные способы​ включая шапку. Так​ упорядоченном по убыванию​​ и возвращает номер​​ остается только взять​возвращает не само​ строка («»).​ Дата выставления счета:​ строке.​​ вам полезна. Просим​​ его позицию в​​ выдаст ошибку.​​ существенным ограничением такого​

​ что просматриваемый диапазон​ формул поиска, Excel​​намного лучше, чем​​ИНДЕКС​ реализации вертикального поиска​​ у нас получился​​ массиве или диапазоне​​ позиции найденного элемента.​​ из этого массива​ значение, а его​​Выберите ячейку​​ » & ТЕКСТ(ИНДЕКС($A$2:$C$33,ПОИСКПОЗ(«Москва»,$B$2:$B$33,0),3),»m/d/yy»)​

​100​
​ вас уделить пару​

​ диапазоне, второе значение​Например, Вы можете вставить​ решения была необходимость​​ содержит значение, равное​​ будет работать значительно​ВПР​/​ в Excel.​​ выпадающий список артикулов,​​ ячеек.​​Например, имеем последовательный ряд​​ максимальное число и​

​ позицию в аргументе​
​C4​

​3331​=ВПР(0,7,A2:C10,3,ЛОЖЬ)​​ секунд и сообщить,​ Груши учтено не​ формулу из предыдущего​ добавлять вспомогательный столбец.​ среднему. Если же​ быстрее, при использовании​. Однако, многие пользователи​ПОИСКПОЗ​Зачем нам это? –​ которые мы можем​0 – (по умолчанию)​ чисел от 1​ возвратить в качестве​просматриваемый_массив​​и вставьте функцию​​Казань​​Используя точное соответствие, функция​​ помогла ли она​​ будет.​​ примера в функцию​ Хорошая новость: формула​ Вы уверены, что​​ПОИСКПОЗ​​ Excel по-прежнему прибегают​

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

​ в массиве или​ в ячейках B1:B10.​​ D1, как результат​​ПОИСКПОЗ(«б»;{«а»;»б»;»в»};0)​​(РАНГ), как показано​​3350​ A значение 0,7.​ кнопок внизу страницы.​ а не позиции​

ИНДЕКС и ПОИСКПОЗ – примеры формул

​вот таким образом:​/​ – ставьте​​ИНДЕКС​​ВПР​​ аргумент функции​​ВПР​ чтобы при выборе​ диапазоне ячеек (не​ Функция =ПОИСКПОЗ(3;B1:B10;0) вернет​ вычисления формулы.​

Как выполнить поиск с левой стороны, используя ПОИСКПОЗ и ИНДЕКС

​возвращает 2 — относительную​​ ниже:​​Казань​ Поскольку точного соответствия​ Для удобства также​ в искомом диапазоне,​=IFERROR(INDEX($A$1:$E$11,MATCH($G$2,$B$1:$B$11,0),MATCH($G$3,$A$1:$E$1,0)),​ПОИСКПОЗ​0​вместо​​, т.к. эта функция​​ПОИСКПОЗ​

​– это не​​ артикула автоматически выдавались​​ обязательно упорядоченном), которое​​ число 3, поскольку​​Как видно конструкция формулы​ позицию буквы «б»​=IFERROR(RANK(D4,$D$4:$D$197,1),»»)​28.04.12​ нет, возвращается сообщение​ приводим ссылку на​ можно записать следующую​»Совпадений не найдено.​может искать по​для поиска точного​ВПР​​ гораздо проще. Так​​должен быть равен​​ единственная функция поиска​​ значения в остальных​ полностью совпадает со​ искомое значение находится​ проста и лаконична.​

​ в массиве {«а»;»б»;»в»}.​=ЕСЛИОШИБКА(РАНГ(D4;$D$4:$D$197;1);»»)​3390​ об ошибке.​

​ оригинал (на английском​
​ формулу: =ПОИСКПОЗ("груши";B7:B13;0)+СТРОКА($B$6)​

ИНДЕКС и ПОИСКПОЗ в Excel

​ Попробуйте еще раз!»)​ значениям в двух​ совпадения.​. В целом, такая​

  • ​ происходит, потому что​​0​​ в Excel, и​ четырех строках. Воспользуемся​ значением, переданным в​

    ​ в ячейке B3,​
    ​ На ее основе​

  • ​Функция​Дважды щелкните по правому​​Казань​​#Н/Д​ языке) .​Если искомое значение не​=ЕСЛИОШИБКА(ИНДЕКС($A$1:$E$11;ПОИСКПОЗ($G$2;$B$1:$B$11;0);ПОИСКПОЗ($G$3;$A$1:$E$1;0));​​ столбцах, без необходимости​​Если указываете​
  • ​ замена увеличивает скорость​ очень немногие люди​

    ​.​
    ​ её многочисленные ограничения​

​ функцией ИНДЕКС. Записываем​​ качестве первого аргумента.​ которая является третьей​ можно в похожий​​ПОИСКПОЗ​​ углу ячейки​​01.05.12​​=ВПР(0,1,A2:C10,2,ИСТИНА)​Предположим, что у вас​ обнаружено в списке,​»Совпадений не найдено.​

Вычисления при помощи ИНДЕКС и ПОИСКПОЗ в Excel (СРЗНАЧ, МАКС, МИН)

​ создания вспомогательного столбца!​1​​ работы Excel на​​ до конца понимают​​-1​​ могут помешать Вам​ ее и параллельно​1 – Поиск наибольшего​ от точки отсчета​ способ находить для​не различает регистры​С4​

​3441​​Используя приблизительное соответствие, функция​​ есть списка номеров​ то будет возвращено​​ Попробуйте еще раз!»)​​Предположим, у нас есть​, значения в столбце​​13%​​ все преимущества перехода​

​– находит наименьшее​
​ получить желаемый результат​

​ изучаем синтаксис.​

​ ближайшего значения заданному​​ (ячейки B1).​​ определенного товара и​ при сопоставлении текста.​​, чтобы быстро скопировать​​Казань​ ищет в столбце​​ офисов расположение и​​ значение ошибки #Н/Д.​

​И теперь, если кто-нибудь​
​ список заказов, и​

​ поиска должны быть​

​.​​ с​​ значение, большее или​ во многих ситуациях.​​Массив. В данном случае​​ первым аргументом в​Данная функция удобна для​ другие показатели. Например,​Если функция​​ формулу в другие​​02.05.12​

​ A значение 0,1.​
​ вам нужно знать,​

​ Например, формула =ПОИСКПОЗ(«грейпфрут»;B7:B13;0)​

О чём нужно помнить, используя функцию СРЗНАЧ вместе с ИНДЕКС и ПОИСКПОЗ

​ введет ошибочное значение,​​ мы хотим найти​​ упорядочены по возрастанию,​​Влияние​​ВПР​​ равное искомому значению.​​ С другой стороны,​ это вся таблица​​ упорядоченном по возрастанию​​ использования в случаях,​ минимальное или среднее​​ПОИСКПОЗ​​ ячейки.​​3517​​ Поскольку 0,1 меньше​ какие сотрудники являются​ вернет ошибку, т.к.​ формула выдаст вот​ сумму по двум​ а формула вернёт​ВПР​на связку​​ Просматриваемый массив должен​​ функции​ заказов. Выделяем ее​

  • ​ массиве или диапазоне​​ когда требуется вернуть​​ значение объема продаж​не находит соответствующего​Объяснение:​Казань​ наименьшего значения в​ в каждой программы​
  • ​ значения «грейпфрут» в​​ такой результат:​​ критериям –​ максимальное значение, меньшее​на производительность Excel​ИНДЕКС​ быть упорядочен по​ИНДЕКС​

​ вместе с шапкой​ ячеек.​​ не само значение,​​ используя для этого​ значения, возвращается значение​Функция​​08.05.12​​ столбце A, возвращается​​ office. Электронную таблицу​​ диапазоне ячеек​​Если Вы предпочитаете в​​имя покупателя​​ или равное среднему.​ особенно заметно, если​и​ убыванию, то есть​и​ и фиксируем клавишей​

ИНДЕКС и ПОИСКПОЗ в Excel

Как при помощи ИНДЕКС и ПОИСКПОЗ выполнять поиск по известным строке и столбцу

​Примечания:​ содержащееся в искомой​​ функции МИН или​​ ошибки #Н/Д.​RANK​3124​ сообщение об ошибке.​

​ огромный, поэтому вы​​B7:B13​​ случае ошибки оставить​​(Customer) и​​Если указываете​ рабочая книга содержит​ПОИСКПОЗ​ от большего к​ПОИСКПОЗ​ F4.​

​Если в качестве аргумента​ ячейке, а ее​​ СРЗНАЧ. Вам ни​​Если​(РАНГ) возвращает порядковый​

​Орел​
​#Н/Д​

​ думаете, что он​нет.​ ячейку пустой, то​

​продукт​-1​ сотни сложных формул​, а тратить время​ меньшему.​​– более гибкие​​Номер строки. Если бы​​ искомое_значение была передана​​ координату относительно рассматриваемого​ что не препятствует,​тип_сопоставления​​ номер значения. Если​​09.04.12​=ВПР(2,A2:C10,2,ИСТИНА)​

​ является довольно сложной​В файле примера можно​ можете использовать кавычки​(Product). Дело усложняется​, значения в столбце​
​ массива, таких как​ на изучение более​На первый взгляд, польза​ и имеют ряд​ у нас требовалось​

​ текстовая строка, функция​ диапазона. В случае​ чтобы приведенный этот​равен 0 и​​ третий аргумент функции​​3155​​Используя приблизительное соответствие, функция​​ задачи. Это задача несложная​

​ найти применение функции​ («»), как значение​ тем, что один​ поиска должны быть​ВПР+СУММ​ сложной формулы никто​ от функции​ особенностей, которые делают​

ИНДЕКС и ПОИСКПОЗ в Excel

​ вывести одно значение,​ ПОИСКПОЗ вернет позицию​ использования для констант​ скелет формулы применить​искомое_значение​ равен 1, Excel​Орел​

​ ищет в столбце​ делать с помощью​​ при поиске в​​ второго аргумента функции​ покупатель может купить​ упорядочены по убыванию,​​. Дело в том,​​ не хочет.​

  • ​ПОИСКПОЗ​​ их более привлекательными,​ мы бы написали​​ элемента в массиве​​ массивов, которые могут​ с использованием более​​является текстом, то​​ выстраивает числа по​11.04.12​​ A значение 2,​​ функции поиска.​ горизонтальном массиве.​

    ​ЕСЛИОШИБКА​
    ​ сразу несколько разных​

    ​ а возвращено будет​​ что проверка каждого​​Далее я попробую изложить​вызывает сомнение. Кому​ по сравнению с​​ какую-то конкретную цифру.​​ (если такой существует)​

  • ​ быть представлены как​​ сложных функций для​искомое_значение​​ возрастанию: от наименьшего​​3177​​ находит наибольшее значение,​​Функции ВПР и ГПР​Поиск позиции можно производить​​. Вот так:​​ продуктов, и имена​

    ​ минимальное значение, большее​
    ​ значения в массиве​

    ​ главные преимущества использования​​ нужно знать положение​​ВПР​ Но раз нам​

​ без учета регистра​ массивы элементов «ключ»​​ реализации максимально комфортного​​может содержать подстановочные​

​ к большему. Поскольку​
​Орел​

​ которое меньше или​​ вместе с функций​​ не только в​IFERROR(INDEX(массив,MATCH(искомое_значение,просматриваемый_массив,0),»»)​ покупателей в таблице​ или равное среднему.​

​ требует отдельного вызова​
​ПОИСКПОЗ​

​ элемента в диапазоне?​.​​ нужно, чтобы результат​​ символов. Например, строки​​ — «значение», функция​​ анализа отчета по​​ знаки: звездочку (​​ мы добавили функцию​19.04.12​​ равняется 2 и​​ индекс и ПОИСКПОЗ,описаны​

ИНДЕКС и ПОИСКПОЗ в Excel

Поиск по нескольким критериям с ИНДЕКС и ПОИСКПОЗ

​ диапазонах ячеек, но​​ЕСЛИОШИБКА(ИНДЕКС(массив;ПОИСКПОЗ(искомое_значение;просматриваемый_массив;0);»»)​​ на листе​В нашем примере значения​​ функции​​и​ Мы хотим знать​Базовая информация об ИНДЕКС​ менялся, воспользуемся функцией​ «МоСкВа» и «москва»​ ПОИСКПОЗ возвращает значение​​ продажам.​​*​​ROW​​3357​ составляет 1,29, а​ некоторые из наиболее​ и в массивах​

​Надеюсь, что хотя бы​Lookup table​ в столбце​ВПР​ИНДЕКС​​ значение этого элемента!​​ и ПОИСКПОЗ​​ ПОИСКПОЗ. Она будет​​ являются равнозначными. Для​ ключа, который явно​Например, как эффектно мы​) и вопросительный знак​(СТРОКА), все значения​Орел​ затем возвращает значение​​ полезных функций в​​ констант. Например, формула​ одна формула, описанная​

ИНДЕКС и ПОИСКПОЗ в Excel

​расположены в произвольном​​D​​. Поэтому, чем больше​​в Excel, а​​Позвольте напомнить, что относительное​

​Используем функции ИНДЕКС и​
​ искать необходимую позицию​

​ различения регистров можно​
​ не указан.​

​ отобразили месяц, в​ (​ в столбце​28.04.12​​ из столбца B​​ Microsoft Excel.​​ =ПОИСКПОЗ(«груши»;{«яблоки»;»ГРУШИ»;»мандарины»};0) вернет значение​​ в этом учебнике,​ порядке.​упорядочены по возрастанию,​​ значений содержит массив​​ Вы решите –​ положение искомого значения​

​ ПОИСКПОЗ в Excel​
​ каждый раз, когда​

​ дополнительно использовать функцию​Например, массив {«виноград»;»яблоко»;»груша»;»слива»} содержит​ котором была максимальная​​?​​D​3492​ в той же​Примечание:​ 2.​ показалась Вам полезной.​Вот такая формула​

  • ​ поэтому мы используем​ и чем больше​​ остаться с​​ (т.е. номер строки​​Преимущества ИНДЕКС и ПОИСКПОЗ​​ мы будем менять​ СОВПАД.​ элементы, которые можно​ продажа, с помощью​​). Звездочка соответствует любой​​стали уникальными. Как​
  • ​Орел​ строке.​​ Функция мастер подстановок больше​​Если искомое значение точно​ Если Вы сталкивались​​ИНДЕКС​​ тип сопоставления​
  • ​ формул массива содержит​ВПР​ и/или столбца) –​​ перед ВПР​​ артикул.​
  • ​Если поиск с использованием​ представить как: 1​ второй формулы. Не​ последовательности знаков, вопросительный​ следствие, числа в​06.05.12​1,71​​ не доступен в​​ не известно, то​ с другими задачами​/​1​ Ваша таблица, тем​​или переключиться на​​ это как раз​

​ИНДЕКС и ПОИСКПОЗ –​Записываем команду ПОИСКПОЗ и​​ рассматриваемой функции не​​ – «виноград», 2​ сложно заметить что​​ знак — любому одиночному​​ столбце​3316​Скопируйте всю таблицу и​

​ Microsoft Excel.​​ с помощью подстановочных​ поиска, для которых​ПОИСКПОЗ​. Формула​​ медленнее работает Excel.​​ИНДЕКС​ то, что мы​ примеры формул​ проставляем ее аргументы.​ дал результатов, будет​ – «яблоко», 3​ во второй формуле​ знаку. Если нужно​C​​Челябинск​​ вставьте ее в​Вот пример того, как​​ знаков можно задать​​ не смогли найти​

​решает задачу:​ИНДЕКС​С другой стороны, формула​/​ должны указать для​Как находить значения, которые​Искомое значение. В нашем​ возвращен код ошибки​ – «груша», 4​ мы использовали скелет​ найти сам вопросительный​тоже уникальны.​​25.04.12​​ ячейку A1 пустого​

​ использовать функцию ВПР.​ поиск по шаблону,​ подходящее решение среди​{=INDEX(‘Lookup table’!$A$2:$C$13,MATCH(1,(A2=’Lookup table’!$A$2:$A$13)*​

ИНДЕКС и ПОИСКПОЗ в Excel

ИНДЕКС и ПОИСКПОЗ в сочетании с ЕСЛИОШИБКА в Excel

​/​ с функциями​ПОИСКПОЗ​ аргументов​ находятся слева​ случае это ячейка,​​ #Н/Д.​​ – «слива», где​​ первой формулы без​​ знак или звездочку,​​Мы почти закончили. Функцию​​3346​​ листа Excel.​​=ВПР(B2;C2:E7,3,ИСТИНА)​ т.е. искомое_значение может​ информации в этом​(B2=’Lookup table’!$B$2:$B$13),0),3)}​ПОИСКПО​ПОИСКПОЗ​​.​​row_num​​Вычисления при помощи ИНДЕКС​​ в которой указывается​​Если аргумент [тип_сопоставления] явно​​ 1, 2, 3,​

​ функции МАКС. Главная​​ перед ними следует​​VLOOKUP​

​Челябинск​
​Совет:​

​В этом примере B2​​ содержать знаки шаблона:​​ уроке, смело опишите​{=ИНДЕКС(‘Lookup table’!$A$2:$C$13;ПОИСКПОЗ(1;(A2=’Lookup table’!$A$2:$A$13)*​З​и​1. Поиск справа налево.​​(номер_строки) и/или​​ и ПОИСКПОЗ​​ артикул, т.е. F13.​​ не указан или​​ 4 – ключи,​​ структура формулы: ВПР(B1;A5:G14;СТОЛБЕЦ(B5:G14);0).​ ввести знак тильды​(ВПР) мы будем​28.04.12​

​    Прежде чем вставлять​ — это первый​ звездочку (*) и​​ свою проблему в​​(B2=’Lookup table’!$B$2:$B$13);0);3)}​

​возвращает «Moscow», поскольку​
​ИНДЕКС​Как известно любому​
​column_num​
​Поиск по известным строке​ Фиксируем ее клавишей​

​ принимает число 0,​ а названия фруктов​ Мы заменили функцию​ (​

ИНДЕКС и ПОИСКПОЗ в Excel

​ использовать, чтобы извлечь​3372​ данные в Excel,​аргумент​ знак вопроса (?).​ комментариях, и мы​​Эта формула сложнее других,​​ величина населения города​

​просто совершает поиск​
​ грамотному пользователю Excel,​

​(номер_столбца) функции​ и столбцу​ F4.​ для поиска частичного​ – значения. Тогда​ МАКС на ПОИСКПОЗ,​~​ найденные страны (наименьшее​Челябинск​ установите для столбцов​— элемент данных, функция​ Звездочка соответствует любой​ все вместе постараемся​ которые мы обсуждали​ Москва – ближайшее​

​ и возвращает результат,​ВПР​
​INDEX​
​Поиск по нескольким критериям​

​Просматриваемый массив. Т.к. мы​

office-guru.ru

Функция ПОИСКПОЗ() в MS EXCEL

​ совпадения текстовых значений​ функция =ПОИСКПОЗ(«яблоко»;{«виноград»;»яблоко»;»груша»;»слива»};0) вернет​ которая в первом​).​ значение первым, второе​​01.05.12​​ A – С​ должна работать. Функции​ последовательности знаков, знак​ решить её.​ ранее, но вооруженные​ меньшее к среднему​​ выполняя аналогичную работу​​не может смотреть​(ИНДЕКС). Как Вы​ИНДЕКС и ПОИСКПОЗ в​ ищем по артикулу,​​ могут быть использованы​​ значение 2, являющееся​​ аргументе использует значение,​​Скопируйте образец данных из​ наименьшее вторым, и​3414​ ширину в 250​

​ ВПР это первый​ вопроса соответствует любому​Урок подготовлен для Вас​ знанием функций​ значению (12 269​ заметно быстрее.​ влево, а это​ помните, функция​ сочетании с ЕСЛИОШИБКА​ значит, выделяем столбец​ подстановочные знаки («?»​ ключом второго элемента.​ полученное предыдущей формулой.​ следующей таблицы и​ т.д.) Выделите ячейку​Челябинск​ пикселей и нажмите​ аргумент — значение,​

Синтаксис функции

​ одиночному знаку.​​ командой сайта office-guru.ru​

​ИНДЕКС​​ 006).​Теперь, когда Вы понимаете​ значит, что искомое​​ИНДЕКС​​Так как задача этого​ артикулов вместе с​ — замена одного​ Отсчет выполняется не​ Оно теперь выступает​ вставьте их в​B4​

​01.05.12​​ кнопку​ которое требуется найти.​Предположим, что имеется перечень​​Источник: https://www.ablebits.com/office-addins-blog/2014/08/13/excel-index-match-function-vlookup/​​и​Эта формула эквивалентна двумерному​ причины, из-за которых​​ значение должно обязательно​​может возвратить значение,​ учебника – показать​ шапкой. Фиксируем F4.​​ любого символа, «*»​​ с 0 (нуля),​ в качестве критерия​ ячейку A1 нового​и вставьте функцию​​3451​​Перенос текста​ Этот аргумент может​ товаров и мы​Перевел: Антон Андронов​

​ПОИСКПОЗ​​ поиску​ стоит изучать функции​​ находиться в крайнем​​ находящееся на пересечении​ возможности функций​​Тип сопоставления. Excel предлагает​​ — замена любого​ как это реализовано​​ для поиска месяца.​

  • ​ листа Excel. Чтобы​​VLOOKUP​​Челябинск​(вкладка «​ быть ссылка на​ не знаем точно​​Автор: Антон Андронов​​Вы одолеете ее.​​ВПР​​ПОИСКПОЗ​ левом столбце исследуемого​
  • ​ заданных строки и​ИНДЕКС​ три типа сопоставления:​ количества символов).​ во многих языках​​ И в результате​​ отобразить результаты формул,​(ВПР), как показано​02.05.12​Главная​ ячейку или фиксированным​ как записана товарная​​Функция ПОИСКПОЗ(), английский вариант​​ Самая сложная часть​и позволяет найти​и​
  • ​ диапазона. В случае​​ столбца, но она​​и​ больше, меньше и​Если в объекте данных,​ программирования при работе​ функция ПОИСКПОЗ нам​​ выделите их и​​ ниже.​3467​», группа «​ значением, например «строфа»​ позиция относящаяся к​ MATCH(), возвращает позицию​

​ – это функция​ значение на пересечении​ИНДЕКС​

​ с​ не может определить,​ПОИСКПОЗ​ точное совпадение. У​

Поиск позиции в массивах с текстовыми значениями

​ переданном в качестве​ с массивами, а​ возвращает номер столбца​​ нажмите клавишу F2,​​=IFERROR(VLOOKUP(A4,$C$4:$E$197,3,FALSE),»»)​

​Челябинск​Выравнивание​ или 21,000. Второй​

​ яблокам: яблоки или​ значения в диапазоне​

​ПОИСКПОЗ​ определённой строки и​, давайте перейдём к​ПОИСКПОЗ​ какие именно строка​для реализации вертикального​

​ нас конкретный артикул,​ аргумента просматриваемый_массив, содержится​ с 1.​ 2 где находится​ а затем — клавишу​

​=ЕСЛИОШИБКА(ВПР(A4;$C$4:$E$197;3;ЛОЖЬ);»»)​02.05.12​»).​ аргумент — это​ яблоко.​ ячеек. Например, если​, думаю, её нужно​ столбца.​​ самому интересному и​​/​

​ и столбец нас​ поиска в Excel,​ поэтому выбираем точное​ два и больше​

Поиск позиции в массиве констант

​Функция ПОИСКПОЗ редко используется​ максимальное значение объема​ ВВОД. При необходимости​Дважды щелкните по правому​3474​Оси​ диапазон ячеек, C2-:E7,​

Поиск позиции с использованием подстановочных знаков

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

​ нижнему углу ячейки​Челябинск​Подшипники​ в котором выполняется​ задать»яблок*» и формула​А10​MATCH(1,(A2=’Lookup table’!$A$2:$A$13),0)*(B2=’Lookup table’!$B$2:$B$13)​

​ИНДЕКС​ применить теоретические знания​, столбец поиска может​Теперь, когда Вам известна​ задерживаться на их​ оно значится как​ значению, будет возвращена​

​ применять в связке​ 4. После чего​ чтобы видеть все​B4​​04.05.12​​Болты​ поиск значения, которые​

Поиск позиций ВСЕХ текстовых значений, удовлетворяющих критерию

​ =ПОИСКПОЗ(«яблок*»;B53:B62;0) вернет позицию​содержится значение «яблоки»,​ПОИСКПОЗ(1;(A2=’Lookup table’!$A$2:$A$13);0)*(B2=’Lookup table’!$B$2:$B$13)​/​ на практике.​ быть, как в​

​ базовая информация об​ синтаксисе и применении.​​ 0 (ноль). На​​ позиция первого вхождения​ с другими функциями,​

​ в работу включается​ данные.​, чтобы быстро скопировать​3490​

​4​

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

​ формулу в другие​Челябинск​

​4​

​ аргумент — это​ со слова яблок​ («яблоки»;A9:A20;0) вернет 2,​ искомое значение –​будет очень похожа​

Поиск позиции в массивах с Числами

​ВПР​ в правой части​ полагаю, что уже​ для понимания сути,​​ закончились.​​Patrakov​

​​ возвращает значение по​Количество​

​ ячейки.​05.05.12​9​

​ столбец в диапазон​​ (если она есть​​ т.е. искомое значение​ это​ на формулы, которые​твердит, что эта​

​ диапазона поиска. Пример:​ становится понятно, как​ а затем разберём​Номер столбца. Опять же​​: Коллеги, возникла такая​​Пример 1. Найти позицию​

​ номеру сроки и​Бананы​Измените цвет чисел в​3503​5​ ячеек, содержащий значение,​ в списке).​ «яблоки» содержится во​1​ мы уже обсуждали​ функция не может​ Как находить значения,​ функции​ подробно примеры формул,​

​ воспользуемся ПОИСКПОЗ. Искомым​ задача:​

​ первого частичного совпадения​ столбца из определенного​25​

​ столбце​Челябинск​7​ которое вы поиска.​Подстановочные знаки следует использовать​ второй ячейке диапазона​, а массив поиска​ в этом уроке,​ смотреть влево. Т.е.​ которые находятся слева​

Функции ПОИСКПОЗ() и ИНДЕКС()

​ПОИСКПОЗ​ которые показывают преимущества​ значением будет ячейка​По строкам в​ строки в диапазоне​ в ее аргументах​Апельсины​А​

​08.05.12​10​Четвертый аргумент не является​ только для поиска​

​A9:A20А9​

​ – это результат​ с одним лишь​ если просматриваемый столбец​ покажет эту возможность​

​и​ использования​ E14, где указано​ таблице найти максимальное​

​ ячеек, хранящих текстовые​ диапазона. Так как​38​на белый и​3151​6​

excel2.ru

Поиск значений с помощью функций ВПР, ИНДЕКС и ПОИСКПОЗ

​ обязательным. Введите TRUE​​ позиции текстовых значений​- первая ячейка​ умножения. Хорошо, что​ отличием. Угадайте каким?​ не является крайним​ в действии.​ИНДЕКС​ИНДЕКС​ наименование параметра, который​ значение, но вывести​ значения.​ у нас есть​Яблоки​ скройте столбцы​Нижний Новгород​8​ или FALSE. Если​ и​ (предполагается, что в​ же мы должны​Как Вы помните, синтаксис​

​ левым в диапазоне​2. Безопасное добавление или​могут работать вместе.​и​ мы ищем (ТОВАР).​ в соседнюю ячейку​Вид исходной таблицы данных:​ номер столбца 2,​40​С​09.04.12​11​ ввести значение ИСТИНА​

​Типом сопоставления​ ней не содержится​ перемножить и почему?​ функции​ поиска, то нет​ удаление столбцов.​

​ПОИСКПОЗ​​ПОИСКПОЗ​ Просматриваемый массив: шапка​ надо не само​

​Для нахождения позиции текстовой​ а номер строки​

​Груши​

​и​3438​​Формула​​ или аргумент оставлен​= 0 (третий​ значение «яблоки»),​ Давайте разберем все​INDEX​ шансов получить от​Формулы с функцией​определяет относительную позицию​вместо​ с наименованиями, потому​ значение, а название​ строки в таблице​ в диапазоне где​41​D​Нижний Новгород​Описание​ пустым, функция возвращает​ аргумент функции).​

​А10​ по порядку:​(ИНДЕКС) позволяет использовать​ВПР​ВПР​ искомого значения в​ВПР​ что искать система​ столбца в котором​ используем следующую формулу:​ хранятся названия месяцев​Формула​.​02.05.12​Результат​ приблизительное значение, указать​Функция ПОИСКПОЗ() возвращает только​

​- вторая,​Берем первое значение в​ три аргумента:​желаемый результат.​перестают работать или​ заданном диапазоне ячеек,​.​ будет по слову​ находится это максимальное​=ПОИСКПОЗ(D2&»*»;B:B;0)-1​ в любые случаи​Описание​Результат: Ваша собственная строка​

Типичный пример использования функции ВПР

​3471​=ГПР(«Оси»;A1:C4;2;ИСТИНА)​ в качестве первого​ одно значение. Если​А11​ столбце​INDEX(array,row_num,[column_num])​Функции​ возвращают ошибочные значения,​

​ а​Функция​ ТОВАР. Тип сопоставления:​ значение. Наглядная ссылка​Описание аргументов:​ будет 1. Тогда​Результат​

Попробуйте попрактиковаться

​ поиска в Excel.​Нижний Новгород​Поиск слова «Оси» в​ аргумента. Если ввести​ в списке присутствует​- третья и​A​ИНДЕКС(массив;номер_строки;[номер_столбца])​ПОИСКПОЗ​ если удалить или​ИНДЕКС​INDEX​ 0.​ — http://joxi.ru/n2YB7GYCzoVOA6​D2&»*» – искомое значение,​ нам осталось функцией​=ПОИСКПОЗ(39;B2:B5,1;0)​

Пример функции ВПР в действии

​Урок подготовлен для Вас​04.05.12​

​ строке 1 и​​ значение FALSE, функция​ несколько значений, удовлетворяющих​ т.д. (подсчет позиции​(Customer) на листе​И я поздравляю тех​и​ добавить столбец в​​использует это число​​(ИНДЕКС) в Excel​​Синтаксис функции ИНДЕКС закончен.​​И эта операция​​ состоящее и фамилии,​​ ИНДЕКС получить соответственное​

​Так как точного соответствия​

​ командой сайта office-guru.ru​

​3160​

​ возврат значения из​

​ будут соответствовать значение​

​ критерию, то эта​

​ производится от верхней​

​Main table​

​ из Вас, кто​

​ИНДЕКС​

​ таблицу поиска. Для​

​ (или числа) и​

​ возвращает значение из​

​ Как в итоге​

​ идет по всем​

​ указанной в ячейке​

​ значение из диапазона​

​ нет, возвращается позиция​

​Источник: http://www.excel-easy.com/examples/search-box.html​

​Москва​

​ строки 2, находящейся​

​ в первом аргументе​

​ функция не поможет.​

​ ячейки).​

​и сравниваем его​

​ догадался!​

​в Excel гораздо​

​ функции​

​ возвращает результат из​

​ массива по заданным​

​ выглядит формула, видно​

​ строкам.​

​ B2, и любого​

​ B4:G4 – Февраль​

​ ближайшего меньшего элемента​Перевел: Антон Андронов​18.04.12​ в том же​ предоставить. Другими словами,​Рассмотрим список с повторяющимися​Функция ПОИСКПОЗ() возвращает позицию​ со всеми именами​Начнём с того, что​ более гибкие, и​ВПР​

​ соответствующей ячейки.​

​ номерам строки и​

​ на скриншоте выше.​Во вложении файлик.​ количества других символов​ (второй месяц).​ (38) в диапазоне​Автор: Антон Андронов​3328​ столбце (столбец A).​ оставив четвертый аргумент​ значениями в диапазоне​ искомого значения, а​

​ покупателей в таблице​

​ запишем шаблон формулы.​

​ им все-равно, где​любой вставленный или​Ещё не совсем понятно?​ столбца. Функция имеет​ Видим, что артикул​Прошу помочь.​

​ (“*”);​

​​

​ B2:B5.​Функция​Москва​4​ пустым, или ввести​B66:B72​ не само значение.​

​ на листе​

​ Для этого возьмём​

​ находится столбец со​ удалённый столбец изменит​ Представьте функции​ вот такой синтаксис:​ 3516 действительно у​Nic70y​B:B – ссылка на​Вторым вариантом задачи будет​2​ПОИСКПОЗ​26.04.12​

​=ГПР(«Подшипники»;A1:C4;3;ЛОЖЬ)​

Пример функции ГПР

​ значение ИСТИНА —​. Найдем все позиции​ Например: ПОИСКПОЗ(«б»;{«а»;»б»;»в»;»б»};0) возвращает​Lookup table​

​ уже знакомую нам​​ значением, которое нужно​ результат формулы, поскольку​ИНДЕКС​INDEX(array,row_num,[column_num])​ арахиса. Протянем формулу​: ну везде обман​ столбец B:B, в​​ поиск по таблице​​=ПОИСКПОЗ(41;B2:B5;0)​​выполняет поиск указанного​​3368​​Поиск слова «Подшипники» в​​ обеспечивает гибкость.​

​ значения Груши.​

​ число 2 -​

​(A2:A13).​

​ формулу​

​ извлечь. Для примера,​

​ синтаксис​

​и​

​ИНДЕКС(массив;номер_строки;[номер_столбца])​

​ на остальные строки​

​buchlotnik​

​ котором выполняется поиск;​

​ с использованием названия​

​Позиция значения 41 в​

​ элемента в диапазоне​

​Москва​

​ строке 1 и​

​В этом примере показано,​Значение Груши находятся в​ относительную позицию буквы​Если совпадение найдено, уравнение​ИНДЕКС​ снова вернёмся к​

​ВПР​

​ПОИСКПОЗ​

​Каждый аргумент имеет очень​ и проверим. Теперь,​:​0 – поиск точного​ месяца в качестве​ диапазоне B2:B5​

​ ячеек и возвращает​

​29.04.12​

​ возврат значения из​ как работает функция.​ позициях 2 и​ «б» в массиве​ возвращает​/​ таблице со столицами​требует указывать весь​в таком виде:​ простое объяснение:​ меняя артикул товара,​

​200?’200px’:»+(this.scrollHeight+5)+’px’);»>=ИНДЕКС($A$1:$C$1;ПОИСКПОЗ(МАКС(A2:C2);A2:C2;0))​

​ совпадения.​

​ критерия. В такие​4​ относительную позицию этого​3420​ строки 3, находящейся​ При вводе значения​

​ 5 списка. С​

​ {«а»;»б»;»в»;»б»}. Позиция второй​

​1​ПОИСКПОЗ​ государств и населением.​ диапазон и конкретный​=INDEX(столбец из которого извлекаем,(MATCH​array​ мы будем видеть,​точнее с файлом​Из полученного значения вычитается​ случаи мы должны​=ПОИСКПОЗ(40;B2:B5;-1)​ элемента в диапазоне.​Москва​ в том же​ в ячейке B2​ помощью формулы массива​

​ буквы «б» будет​

ИНДЕКС и ПОИСКПОЗ примеры

​(ИСТИНА), а если​и добавим в​ На этот раз​ номер столбца, из​ (искомое значение,столбец в​(массив) – это​ кто его купил,​ и что делать​ единица для совпадения​ изменить скелет нашей​Возвращает сообщение об ошибке,​ Например, если диапазон​01.05.12​ столбце (столбец B).​ (первый аргумент) функция​=(«груши»=$B$66:$B$72)*(СТРОКА($B$66:$B$72)-СТРОКА($D$65))​ проигнорирована, функция вернет​ нет –​ неё ещё одну​ запишем формулу​ которого нужно извлечь​ котором ищем,0))​ диапазон ячеек, из​

​ сколько и почем.​ если два одинаковых​ результата с id​ формулы: функцию ВПР​

​ так как диапазон​​ A1:A3 содержит значения​3501​7​ ВПР ищет ячейки​можно найти все эти​ позицию только первой​​0​​ функцию​​ПОИСКПОЗ​​ данные.​​=ИНДЕКС(столбец из которого извлекаем;(ПОИСКПОЗ(искомое​​ которого необходимо извлечь​

​​

​ максимальных?​

​ записи в таблице.​

​ заменить ГПР, а​ B2:B5 упорядочен не​

​ 5, 25 и​

​Москва​

​=ГПР(«П»;A1:C4;3;ИСТИНА)​

​ в диапазоне C2:E7​ позиции. Для этого​ буквы. О том​

​(ЛОЖЬ).​

​ПОИСКПОЗ​

​/​

​Например, если у Вас​ значение;столбец в котором​ значение.​

​Функция ИНДЕКС также помогает​

​Patrakov​

​Пример поиска:​

​ функция СТОЛБЕЦ заменяется​ по убыванию.​ 38, то формула​

​06.05.12​

​Поиск буквы «П» в​

​ (2-й аргумент) и​

​ необходимо выделить несколько​ как вернуть ВСЕ​Далее, мы делаем то​, которая будет возвращать​

​ИНДЕКС​

​ есть таблица​

​ ищем;0))​

​row_num​ выделить из массива​: Файлик то прикрепил​

​Пример 2. В Excel​

​ на СТРОКА.​

​#Н/Д​

​=ПОИСКПОЗ(25;A1:A3;0)​

​Краткий справочник: обзор функции​

​ строке 1 и​

​ возвращает ближайший Приблизительное​

​ ячеек (расположенных вертикально),​

​ позиции искомого значения​

​ же самое для​

​ номер столбца.​

​, которая покажет, какое​

​A1:C10​

​Думаю, ещё проще будет​

​(номер_строки) – это​

​ максимальное число. Рассмотрим​

​ сначала. Дублирую​

​ хранятся две таблицы,​

​Это позволит нам узнать​

​Имеем таблицу, в которой​

​возвращает значение 2, поскольку​

​ ВПР​

​ возврат значения из​

​ совпадение с третьего​

​ в Строке формул​

​ читайте ниже в​

​ значений столбца​

​=INDEX(Ваша таблица,(MATCH(значение для вертикального​

​ место по населению​

​, и требуется извлечь​

​ понять на примере.​

​ номер строки в​

​ тот же самый​

​Цитата​

​ которые на первый​

​ какой объем и​

​ записаны объемы продаж​

​ элемент 25 является вторым​

​Функции ссылки и поиска​

​ строки 3, находящейся​

​ столбца в диапазоне,​

​ ввести вышеуказанную формулу​

​ разделе Поиск позиций​

​B​

​ поиска,столбец, в котором​

​ занимает столица России​

​ данные из столбца​

​ Предположим, у Вас​

​ массиве, из которой​

​ пример. Попробуем определить​

​buchlotnik, 12.01.2017 в​

​ взгляд кажутся одинаковыми.​

​ какого товара была​

​ определенных товаров в​

​ в диапазоне.​

​ (справка)​

​ в том же​

​ столбец E (3-й​

​ и нажать​

​ ВСЕХ текстовых значений,​

​(Product).​

​ искать,0)),(MATCH(значение для горизонтального​

​ (Москва).​

​B​

​ есть вот такой​

​ нужно извлечь значение.​

​ максимальные значения купленного​

​ 16:07, в сообщении​

​ Было решено сравнить​

​ максимальная продажа в​

​ разных месяцах. Необходимо​

​Совет:​

​Использование аргумента массива таблицы​

​ столбце. Так как​

​ аргумент).​

​CTRL+SHIFT+ENTER​

​ удовлетворяющих критерию.​

​Затем перемножаем полученные результаты​

​ поиска,строка в которой​

​Как видно на рисунке​

​, то нужно задать​

Дополнительные сведения о функциях поиска

  • ​ список столиц государств:​ Если не указан,​

  • ​ количества товара, цены​ № 3 ()​

  • ​ по одному однотипному​ определенный месяц.​

support.office.com

Строка поиска в Excel

​ в таблице найти​ Функцией​ в функции ВПР​

​ «П» найти не​Четвертый аргумент пуст, поэтому​. В позициях, в​​ПОИСКПОЗискомое_значение просматриваемый_массив​​ (1 и 0).​ искать,0))​​ ниже, формула отлично​​ значение​Давайте найдём население одной​​ то обязательно требуется​​ и суммы.​

Строка поиска в Excel

​ 200?’200px’:»+(this.scrollHeight+5)+’px’);»>точнее с файлом​ столбцу этих таблиц​Чтобы найти какой товар​

  1. ​ данные, а критерием​​ПОИСКПОЗ​​Этот пример научит вас​​ удалось, возвращается ближайшее​​ функция возвращает Приблизительное​ которых есть значение​; тип_сопоставления)​​ Только если совпадения​​=ИНДЕКС(Ваша таблица,(MATCH(значение для вертикального​

    ​ справляется с этой​
    ​2​

  2. ​ из столиц, например,​ аргумент​Начнем с количества. В​ и что делать​​ на наличие несовпадений.​​ обладал максимальным объемом​ поиска будут заголовки​следует пользоваться вместо​​ создавать собственную строку​​ из меньших значений:​Строка поиска в Excel​ совпадение. Если это​​ Груши будет выведено​​Искомое_значение​​ найдены в обоих​ поиска,столбец, в котором​ задачей:​​для аргумента​​ Японии, используя следующую​column_num​ любой ячейке под​ если два одинаковых​ Реализовать способ сравнения​ продаж в определенном​ строк и столбцов.​ одной из функций​ поиска в Excel.​ «Оси» (в столбце​
  3. ​ не так, вам​ соответствующее значение позиции,​- значение, используемое​ столбцах (т.е. оба​ искать,0)),(MATCH(значение для горизонтального​=INDEX($A$2:$A$10,MATCH(«Russia»,$B$2:$B$10,0))​col_index_num​​ формулу:​​(номер_столбца).​ этим столбцом пишем​ максимальных?​ двух диапазонов ячеек.​​ месяце следует:​​ Но поиск должен​

    ​ПРОСМОТР​
    ​Вот так выглядит таблица.​

  4. ​ A).​ придется введите одно​ в остальных ячейках​​ при поиске значения​​ критерия истинны), Вы​ поиска,строка в которой​=ИНДЕКС($A$2:$A$10;ПОИСКПОЗ(«Russia»;$B$2:$B$10;0))​Строка поиска в Excel​(номер_столбца) функции​​=INDEX($D$2:$D$10,MATCH(«Japan»,$B$2:$B$10,0))​​column_num​​ =ИНДЕКС.​Файлик приложил. Если​Вид таблицы данных:​В ячейку B2 введите​ быть выполнен отдельно​, когда требуется найти​ Если ввести поисковый​​5​​ из значений в​ быдет выведен 0.​ в​ получите​ искать,0))​Теперь у Вас не​ВПР​=ИНДЕКС($D$2:$D$10;ПОИСКПОЗ(«Japan»;$B$2:$B$10;0))​(номер_столбца) – это​Первым аргументом у нас​ 2 максимума есть,​​Для сравнения значений, находящихся​​ название месяца Июнь​ по диапазону строки​ позицию элемента в​ запрос в ячейку​=ГПР(«Болты»;A1:C4;4)​ столбцах C и​
  5. ​C помощью другой формулы​​просматриваемом_массивеИскомое_значение​​1​​Обратите внимание, что для​​ должно возникать проблем​, вот так:​

    ​Теперь давайте разберем, что​
    ​ номер столбца в​

  6. ​ будет не просто​ то оба и​​ в столбце B:B​​ – это значение​ или столбца. То​ диапазоне, а не​Строка поиска в Excel​B2​​Поиск слова «Болты» в​​ D, чтобы получить​​ массива​может быть значением​. Если оба критерия​ двумерного поиска нужно​ с пониманием, как​=VLOOKUP(«lookup value»,A1:C10,2)​ делает каждый элемент​ массиве, из которого​​ массив, а максимальное​​ вывести тогда. Если​ со значениями из​​ будет использовано в​​ есть будет использоваться​ сам элемент. Например,​, Excel найдет совпадения​​ строке 1 и​​ результат вообще.​
  7. ​=НАИБОЛЬШИЙ((«груши»=$B$66:$B$72)*(СТРОКА($B$66:$B$72)-СТРОКА($D$65));СТРОКА()-СТРОКА($D$65))​​ (числом, текстом или​​ ложны, или выполняется​ указать всю таблицу​ работает эта формула:​=ВПР(«lookup value»;A1:C10;2)​ этой формулы:​ нужно извлечь значение.​​ число из массива.​​ 3 максимума (то​​ столбца A:A используем​​ качестве поискового критерия.​ только один из​

    ​ функцию​
    ​ в столбце​

  8. ​ возврат значения из​Когда вы будете довольны​​можно отсортировать найденные позиции,​​ логическим значением (ЛОЖЬ​ только один из​ в аргументе​Строка поиска в Excel
  9. ​Во-первых, задействуем функцию​Если позднее Вы вставите​​Функция​​ Если не указан,​ Поэтому дополнительно используем​​ есть все 3​​ следующую формулу массива​​В ячейку D2 введите​​ критериев. Поэтому здесь​

​ПОИСКПОЗ​E​

Строка поиска в Excel

​ строки 4, находящейся​ ВПР, ГПР одинаково​
​ чтобы номера найденных​
​ или ИСТИНА)) или​

​ них – Вы​

office-guru.ru

Функция ПОИСКПОЗ

​array​​MATCH​​ новый столбец между​MATCH​ то обязательно требуется​ команду МАКС и​ значения одинаковы, то​ (CTRL+SHIFT+ENTER):​ формулу:​ нельзя применить функцию​можно использовать для​​и выдаст результат​​ в том же​ удобно использовать. Введите​ позиций отображались в​

​ ссылкой на ячейку,​​ получите​​(массив) функции​​(ПОИСКПОЗ), которая находит​ столбцами​​(ПОИСКПОЗ) ищет значение​​ аргумент​ выделяем соответствующий массив.​ вывести в 3).​Функция ПОИСКПОЗ выполняет поиск​Для подтверждения после ввода​​ ИНДЕКС, а нужна​​ передачи значения аргумента​ в столбце​​ столбце (столбец C).​​ те же аргументы,​​ первых ячейках (см.​​ содержащую число, текст​

Синтаксис

​0​

​INDEX​ положение «Russia» в​

  • ​A​​ «Japan» в столбце​row_num​В принципе, нам больше​​ Можно как в​​ логического значения ИСТИНА​ формулы нажмите комбинацию​ специальная формула.​номер_строки​B​11​ но он осуществляет​
    ​ файл примера).​​ или логическое значение.​​.​(ИНДЕКС).​ списке:​и​B​

  • ​(номер_строки)​​ не нужны никакие​ 1 ячейку, так​ в массиве логических​

  • ​ клавиш CTRL+SHIFT+Enter, так​​Для решения данной задачи​функции​.​​=ГПР(3;{1;2;3:»a»;»b»;»c»;»d»;»e»;»f»};2;ИСТИНА)​​ поиск в строках​1. Произведем поиск позиции​​Просматриваемый_массив​​Теперь понимаете, почему мы​А теперь давайте испытаем​​=MATCH(«Russia»,$B$2:$B$10,0))​​B​, а конкретно –​Если указаны оба аргумента,​
    ​ аргументы, но требуется​ и в 3​ значений, возвращаемых функцией​ как формула будет​ проиллюстрируем пример на​​ИНДЕКС​​Чтобы создать эту строку​

​Поиск числа 3 в​

​ вместо столбцов. «​

​ в НЕ сортированном​

​— непрерывный диапазон​​ задали​​ этот шаблон на​=ПОИСКПОЗ(«Russia»;$B$2:$B$10;0))​, то значение аргумента​​ в ячейках​​ то функция​​ ввести номер строки​​ — не принципиально.​ СОВПАД (сравнивает каждый​ выполнена в массиве.​ схематической таблице, которая​.​

​ поиска, следуйте инструкции​

​ трех строках константы​​Если вы хотите поэкспериментировать​​ списке числовых значений​ ячеек, возможно, содержащих​​1​​ практике. Ниже Вы​​Далее, задаём диапазон для​​ придется изменить с​B2:B10​

​ИНДЕКС​

​ и столбца. В​​buchlotnik​​ элемент диапазона A2:A12​ А в строке​ соответствует выше описанным​​ПОИСКПОЗ(искомое_значение;просматриваемый_массив;[тип_сопоставления])​​ ниже:​​ массива и возврат​​ с функциями подстановки,​ (диапазон​ искомые значения.​, как искомое значение?​ видите список самых​ функции​

  • ​2​​, и возвращает число​​возвращает значение из​ таком случае напишем​: как-то так вышло​​ со значением, хранящимся​​ формул появятся фигурные​​ условиям.​​Аргументы функции ПОИСКПОЗ описаны​Выделите ячейку​ значения из строки​

  • ​ прежде чем применять​​B8:B14​​Просматриваемый_массив​ Правильно, чтобы функция​

  • ​ населённых стран мира.​​INDEX​​на​3​ ячейки, находящейся на​

  • ​ два нуля.​​ (массивка)​​ в ячейке B2,​​ скобки.​​Лист с таблицей для​​ ниже.​​D4​ 2 того же​​ их к собственным​​)​может быть только​​ПОИСКПОЗ​​ Предположим, наша задача​(ИНДЕКС), из которого​3​, поскольку «Japan» в​ пересечении указанных строки​Скачать примеры использования функций​200?’200px’:»+(this.scrollHeight+5)+’px’);»>=ЕСЛИ(НАИБОЛЬШИЙ($B4:$D4;1)=НАИБОЛЬШИЙ($B4:$D4;СТОЛБЕЦ(A1));ИНДЕКС($B$2:$D$2;ПОИСКПОЗ(НАИБОЛЬШИЙ($B4:$D4+СТОЛБЕЦ($B4:$D4)%%%;СТОЛБЕЦ(A1));$B4:$D4+СТОЛБЕЦ($B4:$D4)%%%;0));»»)​ и возвращает массив​В ячейку F1 введите​​ поиска значений по​​Искомое_значение.​

Пример

​и вставьте функцию​ (в данном случае —​ данным, то некоторые​Столбец Позиция приведен для​ одностолбцовым диапазоном ячеек,​возвращала позицию только,​ узнать население США​ нужно извлечь значение.​, иначе формула возвратит​ списке на третьем​ и столбца.​ ИНДЕКС и ПОИСКПОЗ​Patrakov​

​ результатов сравнения). Если​

​ вторую формулу:​

​ вертикали и горизонтали:​

​    Обязательный аргумент. Значение, которое​

​SEARCH​

​ третьего) столбца. Константа​

​ образцы данных. Некоторые​

​ наглядности и не​

​ например​

​ когда оба критерия​

​ в 2015 году.​

​ В нашем случае​

​ результат из только​

​ месте.​

​Вот простейший пример функции​Получили простейшую формулу, помогающую​: Спасибо, выглядит как​ функция ПОИСКПОЗ нашла​Снова Для подтверждения нажмите​

​Над самой таблицей расположена​

​ сопоставляется со значениями​

​(ПОИСК), как показано​ массива содержит три​

​ пользователи Excel, такие​

​ влияет на вычисления.​

​А9:А20​ выполняются.​Хорошо, давайте запишем формулу.​ это​

​ что вставленного столбца.​

support.office.com

Поиск значения в столбце и строке таблицы Excel

​Функция​INDEX​ вывести максимальное значение​ надо. Но вот​ значение ИСТИНА, будет​ CTRL+SHIFT+Enter.​ строка с результатами.​ в аргументе​ ниже, указав абсолютную​ строки значений, разделенных​ как с помощью​Найдем позицию значения 30​или диапазоном, расположенным​Обратите внимание:​ Когда мне нужно​A2:A10​Используя​INDEX​

Поиск значений в таблице Excel

​(ИНДЕКС):​ из массива. Протянем​ вопрос — в​ возвращена позиция его​В первом аргументе функции​

​ В ячейку B1​просматриваемый_массив​ ссылку на ячейку​

Отчет объем продаж товаров.

​ точкой с запятой​ функции ВПР и​ с помощью формулы​ в одной строке,​В этом случае​ создать сложную формулу​.​ПОИСКПОЗ​(ИНДЕКС) использует​=INDEX(A1:C10,2,3)​ ее вправо, получив​ массиве столбец А​ первого вхождения в​ ГПР (Горизонтальный ПРосмотр)​ водим критерий для​. Например, при поиске​В2​ (;). Так как​ ГПР; другие пользователи​

Поиск значения в строке Excel

​ =ПОИСКПОЗ(30;B8:B14;0)​ например,​ необходимо использовать третий​ в Excel с​Затем соединяем обе части​

​/​3​

  1. ​=ИНДЕКС(A1:C10;2;3)​ аналогичную информацию по​ нам зачем вообще?​ массив. Функция ЕНД​ указываем ссылку на​
  2. ​ поискового запроса, то​ номера в телефонной​
  3. ​.​ «c» было найдено​ предпочитают с помощью​Формула ищет​А2:Е2​ не обязательный аргумент​ вложенными функциями, то​ и получаем формулу:​ИНДЕКС​Результат поиска по строкам.
  4. ​для аргумента​Формула выполняет поиск в​
  5. ​ цене и сумме.​buchlotnik​

Найдено название столбца.

​ возвратит значение ЛОЖЬ,​ ячейку с критерием​ есть заголовок столбца​ книге имя абонента​=SEARCH($B$2,E4)​

Принцип действия формулы поиска значения в строке Excel:

​ в строке 2​ функций индекс и​точное​. Таким образом формула​ функции​ я сначала каждую​=INDEX($A$2:$A$10;MATCH(«Russia»;$B$2:$B$10;0))​, Вы можете удалять​row_num​ диапазоне​sgkorolew​: для работы функции​ если она не​ для поиска. Во​ или название строки.​ указывается в качестве​=ПОИСК($B$2;E4)​ того же столбца,​ ПОИСКПОЗ вместе. Попробуйте​значение 30. Если​ =ПОИСКПОЗ(«слива»;A30:B33;0) работать не​ИНДЕКС​ вложенную записываю отдельно.​

​=ИНДЕКС($A$2:$A$10;ПОИСКПОЗ(«Russia»;$B$2:$B$10;0))​ или добавлять столбцы​(номер_строки), который указывает​A1:C10​: Добрый день!​ :​ принимает значение ошибки​ втором аргументе указана​ А в ячейке​ искомого значения, а​Дважды кликните по маркеру​ что и 3,​ каждый из методов​ в списке его​ будет (выдаст ошибку​. Он необходим, т.к.​Итак, начнём с двух​Подсказка:​

​ к исследуемому диапазону,​ из какой строки​и возвращает значение​Есть таблица с​200?’200px’:»+(this.scrollHeight+5)+’px’);»>НАИБОЛЬШИЙ(массив;который_по_счёту_с_начала_вынимать)​ #Н/Д в качестве​ ссылка на просматриваемый​ D1 формула поиска​ нужным значением будет​ автозаполнения, который находится​ возвращается «c».​ и посмотрите, какие​ нет, то будет​ #Н/Д), так как​ в первом аргументе​ функций​Правильным решением будет​ не искажая результат,​ нужно возвратить значение.​ ячейки во​

Как получить заголовки столбцов по зачиню одной ячейки?

​ исходными данными из​Столбец A1 сгенерит​ аргумента. В этом​ диапазон таблицы. Третий​ должна возвращать результат​ номер телефона.​ в правом нижнем​c​ из них подходящий​ возвращена ошибка #Н/Д.​Просматриваемый_массив​ мы задаем всю​ПОИСКПОЗ​ всегда использовать абсолютные​ так как определен​ Т.е. получается простая​2-й​ четырех граф: 1.​ нам 1, при​ случае функция ЕСЛИ​ аргумент генерирует функция​ вычисления соответствующего значения.​Аргумент​ углу ячейки​В этом примере последней​ вариант.​2. Произведем поиск позиции​представляет собой диапазон​ таблицу и должны​, которые будут возвращать​ ссылки для​ непосредственно столбец, содержащий​ формула:​строке и​ Номер, 2. Имя,​ протяжке вправо это​ вернет текстовую строку​ СТРОКА, которая создает​ После чего в​искомое_значение​D4​ использует функций индекс​Скопируйте следующие данные в​ в отсортированном по​ ячеек размещенный одновременно​

​ указать функции, из​

Поиск значения в столбце Excel

​ номера строки и​ИНДЕКС​ нужное значение. Действительно,​=INDEX($D$2:$D$10,3)​3-м​ 3. Отчество, 4.​ будет B1, C1​ «есть», иначе –​ в памяти массив​ ячейке F1 сработает​может быть значением​

​, чтобы быстро скопировать​ и ПОИСКПОЗ вместе​ пустой лист.​ возрастанию списке числовых​ в нескольких столбцах​

​ какого столбца нужно​ столбца для функции​и​ это большое преимущество,​

  1. ​=ИНДЕКС($D$2:$D$10;3)​столбце, то есть​ Дата рождения.​ и т.д., т.е.​ «нет».​
  2. ​ номеров строк из​ вторая формула, которая​
  3. ​ (числом, текстом или​ формулу во все​ для возвращения раннюю​Совет:​ значений (диапазон​ и нескольких ячейках.​ извлечь значение. В​ИНДЕКС​Результат поиска по столбцам.
  4. ​ПОИСКПОЗ​ особенно когда работать​
  5. ​Формула говорит примерно следующее:​ из ячейки​

Найдено название строки.

Принцип действия формулы поиска значения в столбце Excel:

​Возможные значения в​ максимум, второй максимум,​Чтобы вычислить остальные значения​ 10 элементов. Так​ уже будет использовать​ логическим значением) или​ оставшиеся ячейки столбца​ номер счета-фактуры и​    Прежде чем вставлять​B31:B37​Тип_сопоставления​ нашем случае это​:​, чтобы диапазоны поиска​ приходится с большими​ ищи в ячейках​

​C2​ каждой графе: 1.​ третий максимум и​ «протянем» формулу из​ как в табличной​ значения ячеек B1​ ссылкой на ячейку,​D​ его соответствующих даты​ данные в Excel,​

​)​— число -1,​ столбец​ПОИСКПОЗ для столбца​ не сбились при​ объёмами данных. Вы​ от​.​ ок, 2. ошибка.​ т.д. (при условии,​

​ ячейки C2 вниз​ части у нас​ и D1 в​ содержащую такое значение.​.​ для каждого из​ установите для столбцов​Сортированные списки позволяют искать​ 0 или 1.​C​– мы ищем​ копировании формулы в​ можете добавлять и​D2​

​Очень просто, правда? Однако,​Например, в первой​ что максимумов несколько)​

​ для использования функции​ находится 10 строк.​ качестве критериев для​Просматриваемый_массив​

​Объяснение:​ пяти городов. Так​ A – С​ не только точные​Тип_сопоставления​(Sum), и поэтому​ в столбце​ другие ячейки.​ удалять столбцы, не​до​ на практике Вы​ строке следующие результаты:​Patrakov​ автозаполнения. В результате​Далее функция ГПР поочередно​ поиска соответствующего месяца.​

exceltable.com

Пример функции ПОИСКПОЗ для поиска совпадения значений в Excel

​    Обязательный аргумент. Диапазон ячеек,​Функция​ как дата возвращаются​ ширину в 250​ значения (их позицию),​указывает, как MS​ мы ввели​B​Вы можете вкладывать другие​ беспокоясь о том,​D10​ далеко не всегда​

Примеры использования функции ПОИСКПОЗ в Excel

​Номер, Имя, Отчество,​: Спасибо​ получим:​ используя каждый номер​Теперь узнаем, в каком​ в которых производится​SEARCH​ в виде числа,​ пикселей и нажмите​ но и позицию​ EXCEL сопоставляет​

​3​, а точнее в​ функции Excel в​ что нужно будет​и извлеки значение​ знаете, какие строка​ Дата рождения​AlexM​Как видно, третьи элементы​ строки создает массив​ максимальном объеме и​ поиск.​(ПОИСК) ищет начальную​ мы используем функцию​ кнопку​ ближайшего значения. Например,​

​искомое_значение​.​ диапазоне​ИНДЕКС​ исправлять каждую используемую​ из третьей строки,​ и столбец Вам​ок, ок, ошибка,​: Еще вариант. Формула​ списков не совпадают.​ соответственных значений продаж​ в каком месяце​Тип_сопоставления.​ позицию искомого значения​ текст отформатировать его​Перенос текста​ в списке на​со значениями в​И, наконец, т.к. нам​B2:B11​и​

​ функцию​ то есть из​ нужны, и поэтому​ ошибка​ массива​

​Пример 3. Найти ближайшее​

Формула для поиска неточного совпадения текста в Excel

​ из таблицы по​ была максимальная продажа​    Необязательный аргумент. Число -1,​ в строке. Функция​ как дату. Результат​

​(вкладка «​

Пример 1.

​ картинке ниже нет​ аргументе​ нужно проверить каждую​

​, значение, которое указано​

​ПОИСКПОЗ​

  • ​ВПР​ ячейки​ требуется помощь функции​Итого в строке​200?’200px’:»+(this.scrollHeight+5)+’px’);»>=ЕСЛИ(СУММ(—($B4:$D4=МАКС($B4:$D4)))​ меньшее числу 22​
  • ​ определенному месяцу (Июню).​ Товара 4.​ 0 или 1.​
  • ​SEARCH​ функции ПОИСКПОЗ фактически​

​Главная​ значения 45, но​просматриваемый_массив.​ ячейку в массиве,​

​ в ячейке​

ПОИСКПОЗ.

Сравнение двух таблиц в Excel на наличие несовпадений значений

​, например, чтобы найти​.​D4​ПОИСКПОЗ​ два значения с​В Excel есть очень​ в диапазоне чисел,​ Далее функции МАКС​Чтобы выполнить поиск по​ Аргумент​

​(ПОИСК) не учитывает​

Пример 2.

​ используется функция индекс​», группа «​ можно найти позицию​Если​ эта формула должна​H2​

​ минимальное, максимальное или​3. Нет ограничения на​, так как счёт​.​ результатом равным «ошибка».​ удобная, но почему-то​ хранящихся в столбце​ осталось только выбрать​ столбцам следует:​тип_сопоставления​ регистр. В слове​ аргументом. Сочетание функций​Выравнивание​ наибольшего значения, которое​тип_сопоставления​ быть формулой массива.​(USA). Функция будет​ ближайшее к среднему​ размер искомого значения.​ начинается со второй​Функция​Нужно вывести в​ редко используемая функция,​ таблицы Excel.​

​ максимальное значение из​В ячейку B1 введите​указывает, каким образом​ «Tunisia» строка «uni»​ индекс и ПОИСКПОЗ​»).​

сравнения значений.

​ меньше либо равно,​равен 0, то​

Поиск ближайшего большего знания в диапазоне чисел Excel

​ Вы можете видеть​ выглядеть так:​ значение. Вот несколько​Используя​ строки.​

​MATCH​

Пример 3.

​ дополнительном столбце названия​ которая называется ИНДЕКС.​Вид исходной таблицы данных:​ этого массива.​ значение Товара 4​ в Microsoft Excel​ имеет начальное положение​

​ используются два раза​

​Плотность​ чем искомое значение,​ функция ПОИСКПОЗ() находит​ это по фигурным​=MATCH($H$2,$B$1:$B$11,0)​ вариантов формул, применительно​ВПР​Вот такой результат получится​(ПОИСКПОЗ) в Excel​

​ граф, в которых​

поиск ближайшего большего значения.

​ Удобная она потому,​Для поиска ближайшего большего​Далее немного изменив первую​ – название строки,​искомое_значение​ 2, а в​

​ в каждой формуле​

поиск ближайшего меньшего.

Особенности использования функции ПОИСКПОЗ в Excel

​Вязкость​ т.е. позицию значения​

​ первое значение, которое​

​ скобкам, в которые​

  • ​=ПОИСКПОЗ($H$2;$B$1:$B$11;0)​ к таблице из​, помните об ограничении​ в Excel:​ ищет указанное значение​ «ошибка».​ что позволяет выдавать​ значения заданному во​ формулу с помощью​
  • ​ которое выступит в​сопоставляется со значениями​ слове «United States»​ — сначала получить​Температура​ 40.​ в​ она заключена. Поэтому,​Результатом этой формулы будет​
  • ​ предыдущего примера:​ на длину искомого​Важно! Количество строк и​ в диапазоне ячеек​Т.е. ожидаемый результат​ значение из диапазона​ всем столбце A:A​
  1. ​ функций ИНДЕКС и​ качестве критерия.​ в аргументе​ начальное положение равно​ номер счета-фактуры, а​0,457​
  2. ​Это можно сделать с​точности​ когда закончите вводить​4​1.​ значения в 255​ столбцов в массиве,​ и возвращает относительную​
  3. ​ в доп. столбце​ по заданным номерам​ (числовой ряд может​ ПОИСКПОЗ, мы создали​В ячейку D1 введите​просматриваемый_массив​

​ 1. Чем меньше​

  1. ​ затем для возврата​3,55​ помощью формулы =ПОИСКПОЗ(45;B31:B37;1)​равно аргументу​ формулу, не забудьте​, поскольку «USA» –​MAX​ символов, иначе рискуете​ который использует функция​ позицию этого значения​ в первой строке​ строки и столбца.​ пополняться новыми значениями)​
  2. ​ вторую для вывода​ следующую формулу:​. По умолчанию в​ значение, тем выше​ даты.​
  3. ​500​Обратите внимание, что тип​искомое_значениеПросматриваемый_массив​ нажать​ это 4-ый элемент​(МАКС). Формула находит​ получить ошибку​INDEX​ в диапазоне.​ будет такой: «Отчество,​На практике ИНДЕКС редко​
  4. ​ используем формулу массива​ названия строк таблицы​Для подтверждения после ввода​ качестве этого аргумента​ оно должно располагаться.​Скопируйте всю таблицу и​0,525​ сопоставления =1 (третий​

exceltable.com

Поиск значения в строке, сравнение с заголовком и вывод (Формулы/Formulas)

​может быть не​​Ctrl+Shift+Enter​ списка в столбце​
​ максимум в столбце​#VALUE!​(ИНДЕКС), должно соответствовать​Например, если в диапазоне​ Дата рождения».​ используется, скорее всего,​ (CTRL+SHIFT+ENTER):​ по зачиню ячейки.​ формулы нажмите комбинацию​ используется значение 1.​
​И «United States», и​ вставьте ее в​3,25​
​ аргумент функции).​
​ упорядочен.​

​.​​B​:(

​D​​(#ЗНАЧ!). Итак, если​​ значениям аргументов​​B1:B3​Подскажите, пож-та, как​ из-за того, что​=B2;A:A;»»));A:A;0);1)’ class=’formula’>​

​ Название соответствующих строк​​ горячих клавиш CTRL+SHIFT+Enter,​В приведенной ниже​
​ «United Kingdom» возвращают​​ ячейку A1 пустого​400​3. Поиск позиции в​Если тип_сопоставления равен 1,​Если всё сделано верно,​(включая заголовок).​и возвращает значение​
​ таблица содержит длинные​row_num​содержатся значения New-York,​ сделать.​ эти самые номер​Функция ПОИСКПОЗ возвращает позицию​ (товаров) выводим в​ так как формула​ таблице описано, как​ значение 1. Как​ листа Excel.​0,606​

​ списке отсортированном по​​ то функция ПОИСКПОЗ()​ Вы получите результат​​ПОИСКПОЗ для строки​

​ из столбца​​ строки, единственное действующее​(номер_строки) и​ Paris, London, тогда​Пример во вложении.​ строки и столбца​

​ элемента в столбце​​ F2.​ должна быть выполнена​​ функция находит значения​​ быть? Чуть позже​Совет:​2,93​ убыванию выполняется аналогично,​ находит наибольшее значение,​ как на рисунке​– мы ищем​C​ решение – это​

​column_num​​ следующая формула возвратит​

​китин​​ приходится вводить каждый​ A:A, имеющего максимальное​​ВНИМАНИЕ! При использовании скелета​

excelworld.ru

Функции ИНДЕКС и ПОИСКПОЗ в Excel и примеры их использования

​ в массиве. Если​ в зависимости от​ мы присвоим всем​    Прежде чем вставлять данные​300​ но с типом​ которое меньше либо​ ниже:​ значение ячейки​

​той же строки:​ использовать​(номер_столбца) функции​ цифру​: ну как то​ раз. Ведь искомое​ значение среди чисел,​ формулы для других​ все сделано правильно,​ аргумента​ данным уникальные значения​ в Excel, установите​0,675​ сопоставления = -1.​ равно, чем​Как Вы, вероятно, уже​

Пример использования функций ИНДЕКС и ПОИСКПОЗ

​H3​=INDEX($C$2:$C$10,MATCH(MAX($D$2:I$10),$D$2:D$10,0))​ИНДЕКС​MATCH​3​ так, наверное​ значение не всегда​

Таблица.

​ которые больше числа,​ задач всегда обращайте​ в строке формул​тип_сопоставления​ с помощью функции​ для столбцов A​2,75​ В этом случае​искомое_значениеПросматриваемый_массив​ заметили (и не​(2015) в строке​=ИНДЕКС($C$2:$C$10;ПОИСКПОЗ(МАКС($D$2:I$10);$D$2:D$10;0))​

​/​(ПОИСКПОЗ). Иначе результат​, поскольку «London» –​200?’200px’:»+(this.scrollHeight+5)+’px’);»>=СЖПРОБЕЛЫ(ЕСЛИ(I4=»ошибка»;$I$3;»»)&» «&ЕСЛИ(K4=»ошибка»;$K$3;»»)&» «&ЕСЛИ(J4=»ошибка»;$J$3;»»)&» «&ЕСЛИ(L4=»ошибка»;$L$3;»»))​ нужно выдавать по​ указанного в ячейке​ внимание на второй​ появятся фигурные скобки.​.​RANK​ – D ширину​250​ функция ПОИСКПОЗ() находит​должен быть упорядочен​ раз), если вводить​1​Результат: Beijing​ПОИСКПОЗ​ формулы будет ошибочным.​ это третий элемент​_Boroda_​ порядку. Но тогда​

Проверка значений.

​ B2. Функция ИНДЕКС​ и третий аргумент​В ячейку F1 введите​Тип_сопоставления​(РАНГ), но для​ в 250 пикселей​0,746​ наименьшее значение, которое​

ИНДЕКС.

​ по возрастанию: …,​ некорректное значение, например,​, то есть в​2.​.​Стоп, стоп… почему мы​

​ в списке.​: Еще вариант формулы​ к функции ИНДЕКС​ возвращает значение, хранящееся​ поисковой функции ГПР.​ вторую формулу:​Поведение​ этого нам нужно​ и нажмите кнопку​2,57​ больше либо равно​ -2, -1, 0,​ которого нет в​

​ ячейках​MIN​

​Предположим, Вы используете вот​ не можем просто​=MATCH(«London»,B1:B3,0)​200?’200px’:»+(this.scrollHeight+5)+’px’);»>=ПСТР(ЕСЛИ(A4=E4;»»;»; «&A$3)&ЕСЛИ(B4=F4;»»;»; «&B$3)&ЕСЛИ(C4=G4;»»;»; «&C$3)&ЕСЛИ(D4=H4;»»;»;​ на помощь приходит​ в найденной ячейке.​

​ Количество охваченных строк​Снова Для подтверждения нажмите​1 или опущен​ слегка скорректировать результат​Перенос текста​

​200​ чем искомое значение.​ 1, 2, …,​ просматриваемом массиве, формула​A1:E1​(МИН). Формула находит​ такую формулу с​ использовать функцию​=ПОИСКПОЗ(«London»;B1:B3;0)​ «&D$3);3;99)​ функция ПОИСКПОЗ, которая​

​Результат расчетов:​ в диапазоне указанного​ комбинацию клавиш CTRL+SHIFT+Enter.​Функция​ формулы в ячейке​(вкладка «​0,835​Функции ПОИСКПОЗ() и ИНДЕКС()​ A-Z, ЛОЖЬ, ИСТИНА.​ИНДЕКС​:​ минимум в столбце​

ИНДЕКС и ПОИСКПОЗ. Пример.

​ВПР​VLOOKUP​Функция​sgkorolew​ как раз таки​Для поиска ближайшего меньшего​ в аргументе, должно​Найдено в каком месяце​ПОИСКПОЗ​D4​Главная​2,38​ часто используются вместе,​

​ Если​

Поиск индекса максимального числа массива в Excel

​/​=MATCH($H$3,$A$1:$E$1,0)​D​, которая ищет в​(ВПР)? Есть ли​MATCH​:​ позволяет найти нужную​

​ значения достаточно лишь​ совпадать с количеством​ и какая была​находит наибольшее значение,​

​, как показано ниже:​», группа «​150​ т.к. позволяют по​тип_сопоставления​ПОИСКПОЗ​=ПОИСКПОЗ($H$3;$A$1:$E$1;0)​

​и возвращает значение​ ячейках от​ смысл тратить время,​(ПОИСКПОЗ) имеет вот​китин​ позицию.​ немного изменить данную​

МАКС.

​ строк в таблице.​ наибольшая продажа Товара​

​ которое меньше или​IFERROR(SEARCH($B$2,E4)+ROW()/100000,»»)​Выравнивание​0,946​ найденной позиции в​опущен, то предполагается,​

exceltable.com

Поиск заданных значений в строке и вывод названий столбцов (Формулы/Formulas)

​сообщает об ошибке​​Результатом этой формулы будет​
​ из столбца​B5​ пытаясь разобраться в​ такой синтаксис:​,​Рассмотрим интересный пример, который​
​ формулу и ее​ А также нумерация​ 4 на протяжении​
​ равно значению аргумента​ЕСЛИОШИБКА(ПОИСК($B$2;E4)+СТРОКА()/100000;»»)​
​»).​2,17​
​ одном диапазоне вывести​ что он равен​
​#N/A​5​C​
​до​ лабиринтах​MATCH(lookup_value,lookup_array,[match_type])​_Boroda_​
​ позволит понять прелесть​ следует также ввести​ должна начинаться со​ двух кварталов.​искомое_значение​
​Снова дважды кликните по​Счет​
​100​

​ соответствующее значение из​​ 1.​(#Н/Д) или​​, поскольку «2015» находится​

​той же строки:​​D10​
​ПОИСКПОЗ​ПОИСКПОЗ(искомое_значение;просматриваемый_массив;[тип_сопоставления])​

​, спасибо!​​ функции ИНДЕКС и​​ как массив (CTRL+SHIFT+ENTER):​​ второй строки!​​В первом аргументе функции​​.​

excelworld.ru

​ правому нижнему углу​

Этот учебник рассказывает о главных преимуществах функций ИНДЕКС и ПОИСКПОЗ в Excel, которые делают их более привлекательными по сравнению с ВПР. Вы увидите несколько примеров формул, которые помогут Вам легко справиться со многими сложными задачами, перед которыми функция ВПР бессильна.

В нескольких недавних статьях мы приложили все усилия, чтобы разъяснить начинающим пользователям основы функции ВПР и показать примеры более сложных формул для продвинутых пользователей. Теперь мы попытаемся, если не отговорить Вас от использования ВПР, то хотя бы показать альтернативные способы реализации вертикального поиска в Excel.

Зачем нам это? – спросите Вы. Да, потому что ВПР – это не единственная функция поиска в Excel, и её многочисленные ограничения могут помешать Вам получить желаемый результат во многих ситуациях. С другой стороны, функции ИНДЕКС и ПОИСКПОЗ – более гибкие и имеют ряд особенностей, которые делают их более привлекательными, по сравнению с ВПР.

ИНДЕКС и ПОИСКПОЗ в Excel

  • Базовая информация об ИНДЕКС и ПОИСКПОЗ
  • Используем функции ИНДЕКС и ПОИСКПОЗ в Excel
  • Преимущества ИНДЕКС и ПОИСКПОЗ перед ВПР
  • ИНДЕКС и ПОИСКПОЗ – примеры формул
    • Как находить значения, которые находятся слева
    • Вычисления при помощи ИНДЕКС и ПОИСКПОЗ
    • Поиск по известным строке и столбцу
    • Поиск по нескольким критериям
    • ИНДЕКС и ПОИСКПОЗ в сочетании с ЕСЛИОШИБКА

Содержание

  1. Базовая информация об ИНДЕКС и ПОИСКПОЗ
  2. ИНДЕКС – синтаксис и применение функции
  3. ПОИСКПОЗ – синтаксис и применение функции
  4. Как использовать ИНДЕКС и ПОИСКПОЗ в Excel
  5. Почему ИНДЕКС/ПОИСКПОЗ лучше, чем ВПР?
  6. 4 главных преимущества использования ПОИСКПОЗ/ИНДЕКС в Excel:
  7. ИНДЕКС и ПОИСКПОЗ – примеры формул
  8. Как выполнить поиск с левой стороны, используя ПОИСКПОЗ и ИНДЕКС
  9. Вычисления при помощи ИНДЕКС и ПОИСКПОЗ в Excel (СРЗНАЧ, МАКС, МИН)
  10. О чём нужно помнить, используя функцию СРЗНАЧ вместе с ИНДЕКС и ПОИСКПОЗ
  11. Как при помощи ИНДЕКС и ПОИСКПОЗ выполнять поиск по известным строке и столбцу
  12. Поиск по нескольким критериям с ИНДЕКС и ПОИСКПОЗ
  13. ИНДЕКС и ПОИСКПОЗ в сочетании с ЕСЛИОШИБКА в 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))

Думаю, ещё проще будет понять на примере. Предположим, у Вас есть вот такой список столиц государств:

ИНДЕКС и ПОИСКПОЗ в Excel

Давайте найдём население одной из столиц, например, Японии, используя следующую формулу:

=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:

ИНДЕКС и ПОИСКПОЗ в 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))

ИНДЕКС и ПОИСКПОЗ в Excel

Теперь у Вас не должно возникать проблем с пониманием, как работает эта формула:

  • Во-первых, задействуем функцию 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).

ИНДЕКС и ПОИСКПОЗ в Excel

Как при помощи ИНДЕКС и ПОИСКПОЗ выполнять поиск по известным строке и столбцу

Эта формула эквивалентна двумерному поиску ВПР и позволяет найти значение на пересечении определённой строки и столбца.

В этом примере формула ИНДЕКС/ПОИСКПОЗ будет очень похожа на формулы, которые мы уже обсуждали в этом уроке, с одним лишь отличием. Угадайте каким?

Как Вы помните, синтаксис функции INDEX (ИНДЕКС) позволяет использовать три аргумента:

INDEX(array,row_num,[column_num])
ИНДЕКС(массив;номер_строки;[номер_столбца])

И я поздравляю тех из Вас, кто догадался!

Начнём с того, что запишем шаблон формулы. Для этого возьмём уже знакомую нам формулу ИНДЕКС/ПОИСКПОЗ и добавим в неё ещё одну функцию ПОИСКПОЗ, которая будет возвращать номер столбца.

=INDEX(Ваша таблица,(MATCH(значение для вертикального поиска,столбец, в котором искать,0)),(MATCH(значение для горизонтального поиска,строка в которой искать,0))
=ИНДЕКС(Ваша таблица,(MATCH(значение для вертикального поиска,столбец, в котором искать,0)),(MATCH(значение для горизонтального поиска,строка в которой искать,0))

Обратите внимание, что для двумерного поиска нужно указать всю таблицу в аргументе array (массив) функции INDEX (ИНДЕКС).

А теперь давайте испытаем этот шаблон на практике. Ниже Вы видите список самых населённых стран мира. Предположим, наша задача узнать население США в 2015 году.

ИНДЕКС и ПОИСКПОЗ в Excel

Хорошо, давайте запишем формулу. Когда мне нужно создать сложную формулу в 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. Просто? Да!

ИНДЕКС и ПОИСКПОЗ в Excel

Поиск по нескольким критериям с ИНДЕКС и ПОИСКПОЗ

В учебнике по ВПР мы показывали пример формулы с функцией ВПР для поиска по нескольким критериям. Однако, существенным ограничением такого решения была необходимость добавлять вспомогательный столбец. Хорошая новость: формула ИНДЕКС/ПОИСКПОЗ может искать по значениям в двух столбцах, без необходимости создания вспомогательного столбца!

Предположим, у нас есть список заказов, и мы хотим найти сумму по двум критериям – имя покупателя (Customer) и продукт (Product). Дело усложняется тем, что один покупатель может купить сразу несколько разных продуктов, и имена покупателей в таблице на листе Lookup table расположены в произвольном порядке.

ИНДЕКС и ПОИСКПОЗ в Excel

Вот такая формула ИНДЕКС/ПОИСКПОЗ решает задачу:

{=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

ИНДЕКС и ПОИСКПОЗ в сочетании с ЕСЛИОШИБКА в 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));
"Совпадений не найдено. Попробуйте еще раз!")

И теперь, если кто-нибудь введет ошибочное значение, формула выдаст вот такой результат:

ИНДЕКС и ПОИСКПОЗ в Excel

Если Вы предпочитаете в случае ошибки оставить ячейку пустой, то можете использовать кавычки («»), как значение второго аргумента функции ЕСЛИОШИБКА. Вот так:

IFERROR(INDEX(массив,MATCH(искомое_значение,просматриваемый_массив,0),"")
ЕСЛИОШИБКА(ИНДЕКС(массив;ПОИСКПОЗ(искомое_значение;просматриваемый_массив;0);"")

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

Оцените качество статьи. Нам важно ваше мнение:

Поиск нужных данных в диапазоне

Как использовать функцию ВПР (VLOOKUP) для поиска и выборки нужных значений из списка мы недавно разбирали. Если вы еще с ней не знакомы — загляните сюда, не пожалейте пяти минут, чтобы сэкономить себе потом несколько часов.

Если же вы знакомы с ВПР, то — вдогон — стоит разобраться с похожими функциями: ИНДЕКС (INDEX) и ПОИСКПОЗ (MATCH), владение которыми весьма облегчит жизнь любому опытному пользователю Excel. Гляньте на следующий пример:

index1.gif

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

Задача решается при помощи двух функций:

=ИНДЕКС(A1:G13;ПОИСКПОЗ(C16;D1:D13;0);2)

Функция ПОИСКПОЗ ищет в столбце D1:D13 значение артикула из ячейки C16. Последний аргумент функции 0 — означает поиск точного (а не приблизительного) соответствия. Функция выдает порядковый номер найденного значения в диапазоне, т.е. фактически номер строки, где найден требуемыый артикул.

Функция ИНДЕКС выбирает из диапазона A1:G13 значение, находящееся на пересечении заданной строки (номер строки с артикулом выдает функция ПОИСКПОЗ) и столбца (нам нужен регион, т.е. второй столбец). 

Ссылки по теме

  • Использование функции ВПР (VLOOKUP) для поиска и подстановки значений.
  • Улучшенная версия функции ВПР (VLOOKUP)
  • Многоразовый ВПР

На чтение 7 мин. Просмотров 30.1k.

Содержание

  1. Получить первое не пустое значение в списке
  2. Получить первое текстовое значение в списке
  3. Получить первое текстовое значение с ГПР
  4. Получить позицию последнего совпадения
  5. Получить последнее совпадение содержимого ячейки
  6. Получить n-е совпадение
  7. Получить n-ое совпадение с ИНДЕКС/ПОИСКПОЗ
  8. Получить n-ое совпадение с ВПР
  9. Если ячейка содержит одну из многих вещей
  10. Поиск первой ошибки
  11. Поиск следующего наибольшего значения
  12. Несколько совпадений в списке, разделенных запятой
  13. Частичное совпадение чисел с шаблоном
  14. Частичное совпадение с ВПР
  15. Положение первого частичного совпадения

Получить первое не пустое значение в списке

{ = ИНДЕКС( диапазон ; ПОИСКПОЗ( ЛОЖЬ; ЕПУСТО ( диапазон ); 0 )) }

Получить первое не пустое значение в списке

Если вам нужно получить первое не пустое значение (текст или число) в диапазоне в одной колонке вы можете использовать формулу массива на основе функций ИНДЕКС, ПОИСКПОЗ и ЕПУСТО.

В данном примере мы используем эту формулу:

{ = ИНДЕКС( B3: B11; ПОИСКПОЗ( ЛОЖЬ; ЕПУСТО ( B3: B11 ); 0 )) }

Таким образом, суть проблемы заключается в следующем: мы хотим получить первую не пустую ячейку, но для этого нет конкретной формулы в Excel. Мы могли бы использовать ВПР с шаблоном *, но это будет работать только для текста, а не для чисел.

Таким образом, нам нужно строить функциональные возможности для нужных нам формул. Способ сделать это состоит в использовании функции массива, которая «тестирует» ячейки и возвращает массив истина/ложь значения, которые мы можем сопрягать с ПОИСКПОЗ.

Работая изнутри, ЕПУСТО оценивает ячейки в диапазоне В3: В11 и возвращает результат и массив, который выглядит следующим образом:

{ИСТИНА; ЛОЖЬ; ИСТИНА; ЛОЖЬ; ЛОЖЬ; ИСТИНА; ИСТИНА; ИСТИНА; ИСТИНА}

Каждая ЛОЖЬ представляет собой ячейку в диапазоне, который не является пустой.

Далее, ПОИСКПОЗ ищет ЛОЖЬ внутри массива и возвращает позицию первого наденного совпадения, в этом случае 2. На данный момент, формула в примере теперь выглядит следующим образом:

{ = ИНДЕКС( B3: B11; 2; 0 )) }

И, наконец, функция ИНДЕКС выводит значение в положении 2 в массиве, в этом случае число 10.

Получить первое текстовое значение в списке

= ВПР ( «*»; диапазон; 1; ЛОЖЬ)

Если вам нужно получить первое текстовое значение в списке (диапазон один столбец), вы можете использовать функцию ВПР, чтобы установить точное соответствие, с шаблонным символом для поиска.

Получить первое текстовое значение в списке

В данном примере формула в D7 является:

= ВПР ( «*» ; B5: B11 ; 1 ; ЛОЖЬ)

Групповой символ звездочка (*) соответствует любому текстовому значению.

Получить первое текстовое значение с ГПР

= ГПР ( «*»; диапазон; 1; ЛОЖЬ)

Получить первое текстовое значение с ГПР

Для поиска и получения первого текстового значения во всем диапазоне столбцов, вы можете использовать функцию ГПР с групповым символом. В примере формула в F5 является:

= ГПР ( «*»; С5: Е5; 1; 0 )

Значение поиска является «*», групповым символом, который соответствует одному или более текстовому значению.

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

{ = МАКС( ЕСЛИ ( Величины = знач ; СТРОКА(величина) — СТРОКА(ИНДЕКС( Величины; 1 ; 1 )) + 1 )) }

Для того, чтобы получить позицию последнего совпадения (т.е. последнего вхождения) от значения поиска, вы можете использовать формулу, основанную на ЕСЛИ, СТРОКА, ИНДЕКС, ПОИСКПОЗ и MAКС функций.

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

В примере формула в G6:

=МАКС(ЕСЛИ(B4:B11=G5;СТРОКА(B4:B11)-СТРОКА(ИНДЕКС(B4:B11;1;1))+1))

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

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

= ПРОСМОТР( 2 ; 1 / ПОИСК ( вещи ; А1 ); вещи )

Чтобы проверить ячейку для одной из нескольких вещей, и вернуть последнее совпадение, найденное в списке, вы можете использовать формулу, основанную на ПРОСМОТР и ПОИСК функций. В случае нескольких найденных совпадений, формула вернет последнее совпадение из списка «вещей».

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

В примере формула в С5:

=ПРОСМОТР(2;1/ПОИСК($E$4:$E$7;B4);$E$4:$E$7)

Получить n-е совпадение

= НАИМЕНЬШИЙ( ЕСЛИ( логический тест; СТРОКА( список ) — МИН( СТРОКА( список )) + 1 ); n )

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

= НАИМЕНЬШИЙ( ЕСЛИ( список = E5 ; СТРОКА( список ) — МИН( СТРОКА( список )) + 1 ); F5 )

Эта формула возвращает позицию второго появления «красных» в списке.

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

Получить n-ое совпадение с ИНДЕКС/ПОИСКПОЗ

{ = ИНДЕКС( массив; НАИМЕНЬШИЙ( ЕСЛИ( величины = знач ; СТРОКА ( величины ) — СТРОКА ( ИНДЕКС( величины; 1 ; 1 )) + 1 ); n-й )) }

Получить n-ое совпадение с ИНДЕКС/ПОИСКПОЗ

Чтобы получить n-ое совпадение, используя ИНДЕКС и ПОИСКПОЗ, вы можете использовать формулу массива с функциями ЕСЛИ и НАИМЕНЬШИЙ, чтобы выяснить номер строки совпадения.

Получить n-ое совпадение с ВПР

= ВПР( id_формулы; стол; 4; 0 )

Чтобы получить n-ое совпадение с ВПР, вам необходимо добавить вспомогательный столбец в таблицу , которая строит уникальный идентификатор , который включает счетчик.

Получить n-ое совпадение с ВПР

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

В примере, формула ячейки J6 вспомогательного столбца выглядит следующим образом:

=ВПР(J3&»-«&I6;B4:G11;4;0)

Если ячейка содержит одну из многих вещей

{ = ИНДЕКС( результаты ;ПОИСКПОЗ( ИСТИНА ; ЕЧИСЛО( ПОИСК( вещи ; A1 )); 0 )) }

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

{ = ИНДЕКС( результаты ; ПОИСКПОЗ( ИСТИНА ; ЕЧИСЛО( ПОИСК ( вещи ; B5 )); 0 )) }

Эта формула использует два названных диапазона: E5: E8 называется «вещи» и F5: F8 называется «Результаты». Убедитесь, что вы используете диапазоны имен с одинаковыми именами (на основе ваших данных). Если вы не хотите использовать именованные диапазоны, используйте абсолютные ссылки вместо этого.

Поиск первой ошибки

{ = ПОИСКПОЗ( ИСТИНА ; ЕОШИБКА(диап ); 0 ) }

Если вам нужно найти первую ошибку в диапазоне ячеек, вы можете использовать формулу массива, основанную на ПОИСКПОЗ и ЕОШИБКА функциях.

Поиск первой ошибки

В приведенном примере формула:

{ = ПОИСКПОЗ( ИСТИНА ; ЕОШИБКА( B4: B11 ); 0 ) }

Работая изнутри, функция ЕОШИБКА возвращает значение ИСТИНА, если значение является признанной ошибкой, и ЛОЖЬ, если нет.

Когда дается диапазон ячеек (массив ячеек) функция ЕОШИБКА будет возвращать массив истина/ложь значений. В примере, это результирующий массив выглядит следующим образом:

{ЛОЖЬ; ЛОЖЬ; ЛОЖЬ; ЛОЖЬ; ЛОЖЬ; ИСТИНА; ЛОЖЬ; ЛОЖЬ}

Обратите внимание, что 6-е значение (что соответствует 6-й ячейке в диапазоне) истинно, так как ячейка В9 содержит #Н/A.

Поиск следующего наибольшего значения

=ИНДЕКС ( данные; ПОИСКПОЗ( поиск ; значения ) + 1 )

Поиск следующего наибольшего значения

Для того, чтобы найти «следующее наибольшее» значение в справочной таблице, можно использовать формулу, основанную на ИНДЕКС и ПОИСКПОЗ. В примере формула в F6 является:

=ИНДЕКС(C5:C9;ПОИСКПОЗ(F4;B5:B9)+1)

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

{ = ОБЪЕДИНИТЬ ( «;» ; ИСТИНА ; ЕСЛИ( диапазон1 = E5 ; диапазон2 ; «» )) }

Для поиска и извлечения нескольких совпадений, разделенных запятыми (в одной ячейке), вы можете использовать функцию ЕСЛИ с функцией ОБЪЕДИНИТЬ.

{ = ОБЪЕДИНИТЬ( «;» ; ИСТИНА ; ЕСЛИ( группа = E5 ; имя ; «» )) }

Эта формула использует «имя» — именованный диапазон (B5: B11) и «группа» — (C5: C11).

Частичное совпадение чисел с шаблоном

{ = ПОИСКПОЗ( «*» & номер & «*» ; ТЕКСТ( диапазон ; «0» ); 0 ) }

Для того, чтобы выполнить частичное совпадение (подстроки) против чисел, вы можете использовать формулу массива, основанную на ПОИСКПОЗ и ТЕКСТ.

Частичное совпадение чисел с шаблоном

Excel поддерживает символы подстановки «*» и «?». Тем не менее, если вы используете специальные символы с номером, вы будете преобразовывать числовое значение в текстовое значение. Другими словами, «*» & 99 & «*» = «* 99 *» (текстовая строка).

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

Решение

Одно из решений заключается в преобразовании чисел в диапазоне поиска для текстовых значений, а затем сделать нормальный поиск с ПОИСКПОЗ, ВПР и т.д.

Другой вариант

Другой способ, чтобы преобразовать числа в текст, чтобы сцепить пустую строку. Эта формула работает так же, как выше формуле:

= ПОИСКПОЗ ( «*» & Е5 & «*» ; В5: В10 & «» ; 0 )

Частичное совпадение с ВПР

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

Частичное совпадение с ВПР

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

=ВПР($H$2&»*»;$B$3:$E$12;2;0)

В этой формуле, значение представляет собой именованный диапазон, который относится к Н2, а также данные , представляет собой именованный диапазон , который относится к B3: E102. Без названных диапазонов, формула может быть записана следующим образом:

Положение первого частичного совпадения

= ПОИСКПОЗ ( «* текст *» ; диапазон; 0 )

Для того, чтобы получить позицию первого частичного совпадения (то есть ячейку, которая содержит текст, который вы ищете), вы можете использовать функцию ПОИСКПОЗ со специальными символами.

Положение первого частичного совпадения

В примере формула в Е7:

=ПОИСКПОЗ(«*»&E6&»*»;B5:B10;0)

Функция ПОИСКПОЗ возвращает позицию или «индекс» в первом совпадении на основании значения поиска в диапазоне.

ПОИСКПОЗ поддерживает подстановочное согласование со звездочкой «*» (один или несколько символов) или знаком вопроса «?» (один символ), но только тогда, когда третий аргумент, тип_сопоставления, установлен в ЛОЖЬ или ноль.

INDEX-MATCH has become a more popular tool for Excel as it solves the limitation of the VLOOKUP function, and it is easier to use. INDEX-MATCH function in Excel has a number of advantages over the VLOOKUP function:

  1. INDEX and MATCH are more flexible and faster than Vlookup
  2. It is possible to execute horizontal lookup, vertical lookup, 2-way lookup, left lookup, case-sensitive lookup, and even lookups based on multiple criteria.
  3. In sorted Data, INDEX-MATCH is 30% faster than VLOOKUP. This means that in a larger dataset 30% faster makes more sense.

Let’s begin with the detailed concepts of each INDEX and MATCH.

INDEX Function

The INDEX function in Excel is very powerful at the same time a flexible tool that retrieves the value at a given location in a range. In another word, It returns the content of a cell, specified by row and column offset.

Syntax:

=INDEX(reference, [row], [column])

Parameters:

  • reference: The array of cells to be offset into. It can be a single range or an entire dataset in a table of data.
  • row [optional]: The number of offset rows. It means if we choose a table reference range as “A1:A5” then the Cell/content that we want to extract is at how much vertical distance. Here, for A1 row will be 1, for A2 row = 2, and so on. If we give row = 4 then it will extract A4. As row is optional so if we don’t specify any row number then it extracts entire rows in the reference range. That is A1 to A5 in this case.
  • column [optional]: The number of offset columns. It means if we choose a table reference range as “A1:B5” then the Cell/content we want to extract is at how much horizontal distance. Here, for A1 row will be 1  and column will be 1, for B1 row will be 1 but the column will be 2 similarly for A2 row = 2 column = 1, for B2 row = 2 column = 2 and so on. If we give row = 5 and column 2 then it will extract B5. As the column is optional so if we don’t specify any row no. then it will extract the entire column in the reference range. For example, if we give row = 2 and column as empty then it will extract (A2:B2). If we don’t specify Row and column both then it will extract the entire reference table that is (A1:B5).

Reference Table: The following table will be used as a reference table for all the examples of the INDEX function. First Cell is at B3 (“FOOD”) and the Last Diagonal Cell is at F10 (“180”).

Reference table

Examples: Below are some examples of Index functions.

Case 1: No Rows and Columns are mentioned.

Input Command: =INDEX(B3:C10)                        

Case 1

Case 2: Only Rows are Mentioned.

Input Command: =INDEX(B3:C10,2)                  

Case 2

Case 3: Both Rows And Columns are mentioned.

Input Command: =INDEX(B3:D10,4,2)                    

Case 3

Case 4: Only Columns are mentioned.

Input Command: =INDEX(B3 : D10 , , 2)                  

Case 4

Problem With INDEX Function: The problem with the INDEX function is that there is a need to specify rows and columns for the data that we are looking for. Let’s assume we are dealing with a machine learning dataset of 10000 rows and columns then it will be very difficult to search and extract the data that we are looking for. Here comes the concept of Match Function, which will identify rows and columns based on some condition.

MATCH Function

It retrieves the position of an item/value in a range. It is a less refined version of a VLOOKUP or HLOOKUP that only returns the location information and not the actual data.  MATCH is not case-sensitive and does not care whether the range is Horizontal or Vertical.

Syntax:

=MATCH(search_key, range, [search_type])

Parameters:

  • search_key: The value to search for. For example, 42, “Cats”, or I24.
  • range: The one-dimensional array to be searched. It Can Either be a single row or a single column.eg->A1:A10 , A2:D2 etc.
  • search_type [optional]: The search method. = 1 (default) finds the largest value less than or equal to search_key when the range is sorted in ascending order. 
    • = 0 finds the exact value when the range is unsorted.
    • = -1 finds the smallest value greater than or equal to search_key when the range is sorted in descending order.

Row number or Column number can be found using the match function and can use it inside the index function so if there is any detail about an item, then all information can be extracted about the item by finding the row/column of the item using match then nesting it into index function.

Reference Table: The following table will be used as a reference table for all the examples of the MATCH function. First Cell is at B3 (“FOOD”) and the Last Diagonal Cell is At F10 (“180”)

Reference table MATCH function

Examples: Below are some examples of the MATCH function-

Case 1: Search Type 0, It means Exact Match.

Input Command: =MATCH(“South Indian”,C3:C10,0)                                 

Case 1 MATCH

Case 2: Search Type 1 (Default).

Input Command: =MATCH(“South Indian”,C3:C10)                           

Case 2 MATCH

  
Case 3: Search Type -1.

Input Command: =MATCH(“South Indian”,C3:C10,-1)                             

Case 3 MATCH

INDEX-MATCH Together

In the previous examples, the static values of rows and columns were provided in the INDEX function Let’s assume there is no prior knowledge about the rows and column position then rows and columns position can be provided using the MATCH function. This Is a dynamic way to search and extract value.

Syntax:

=INDEX(Reference Table , [Match(SearchKey,Range,Type)/StaticRowPosition],
                         [Match(SearchKey,Range,Type)/StaticColumnPosition])

Reference Table: The following reference table will be used. First Cell is at B3 (“FOOD”) and the Last Diagonal Cell is At F10 (“180”)

Reference table INDEX-MATCH

Example: Let’s say the task is to find the cost of Masala Dosa. It is known that column 3 represents the cost of items, but the row position of Masala Dosa is not known. The problem can be divided into two steps-

Step 1: Find the position of Masala Dosa by using the formula:

=MATCH("Masala Dosa",B3:B10,0) 

Here B3:B10 represents Column “Food” and 0 means Exact Match. It will return the row number of Masala Dosa.

Step 2: Find the cost of Masala Dosa. Use the INDEX Function to find the cost of Masala Dosa. By substituting the above MATCH function query inside the INDEX function at the place where the exact position of Masala Dosa is required, and the column number of cost is 3 which is already known. 

=INDEX(B3:F10, MATCH("Masala Dosa", B3:B10 , 0) ,3)

INDEX-MATCH Together

Two Ways Lookup With INDEX-MATCH Together

In the previous example, the column position Of the “Cost” attribute was hardcoded. So, It was not fully dynamic. 

Case 1: Let’s assume there is no knowledge about the column number of Cost also, then it can be obtained using the formula:

=MATCH("Cost",B3:F3,0)

Here B3:F3 represents Header Column.   

Case 2: When row, as well as column value, are provided via MATCH function (without giving static value) then it is called Two-Way Lookup. It can be achieved using the formula:

=INDEX(B3:F10, MATCH("Masala Dosa",B3:B10, 0) , MATCH("Cost" ,B3:F3 ,0))

Two-Way Lookup

Left Lookup

One of the key advantages of INDEX and MATCH over the VLOOKUP function is the ability to perform a “left lookup”. It means it is possible to extract the row position of an item from using any attribute at right and the value of another attribute in left can be extracted. 

For Example, Let’s say buy food whose cost should be 140 Rs. Indirectly we are saying buy “Biryani”. In this example, the cost Rs 140/- is known, there is a need to extract the “Food”. Since the Cost column is placed to the right of the Food column. If VLOOKUP is applied it will not be able to search the left side of the Cost column. That is why using VLOOKUP it is not possible to get Food Name. 

To overcome this disadvantage INDEX-MATCH function Left lookup can be used. 
Step 1: First extract row position of Cost 140 Rs using the formula:

=MATCH(140, D3:D10,0)

Here D3: D10 represents the Cost column where the search for the Cost 140 Rs row number is being done. 

Step 2: After getting the row number, the next step is to use the INDEX Function to extract Food Name using the formula:

=INDEX(B3:B10, MATCH(140, D3:D10,0)) 

Here B3:B10 represents Food Column and 140 is the Cost of the food item.

Left Lookup

Case Sensitive Lookup

By itself, the MATCH function is not case-sensitive. This means if there is a Food Name “DHOKLA” and the MATCH function is used with the following search word:

  1. “Dhokla”
  2. “dhokla”
  3. “DhOkLA”

All will return the row position of DHOKLA. However, the EXACT function can be used with INDEX and MATCH to perform a lookup that respects upper and lower case.

Exact Function: The Excel EXACT function compares two text strings, taking into account upper and lower case characters, and returns TRUE if they are the same, and FALSE if not. EXACT is case-sensitive.

Examples:

  1. EXACT(“DHOKLA”,”DHOKLA”): This will return True.
  2. EXACT(“DHOKLA”,”Dhokla”): This will return False.
  3. EXACT(“DHOKLA”,”dhokla”): This will return False.
  4. EXACT(“DHOKLA”,”DhOkLA”): This will return False.

Example: Let say the task is to search for the Type Of Food “Dhokla” but in Case-Sensitive Way. This can be done using the formula-

=INDEX(C3:C10, MATCH(TRUE , EXACT("Dhokla", B3:B10) ,0))

Here the EXACT function will return True if the value in Column B3:B10 matches with “Dhokla” with the same case, else it will return False. Now MATCH function will apply in Column B3:B10 and search for a row with the Exact value TRUE. After that INDEX Function will retrieve the value of Column C3:C10 (Food Type Column) at the row returned by the MATCH function.                 

Case-Sensitive Lookup

Multiple Criteria Lookup

One of the trickiest problems in Excel is a lookup based on multiple criteria. In other words, a lookup that matches on more than one column at the same time. In the example below, the INDEX and MATCH function and boolean logic are used to match on 3 columns-

  1. Food.
  2. Cost.
  3. Quantity.

To extract total cost.

Example: Let’s say the task is to calculate the total cost of Pasta where 

  1. Food: Pasta.
  2. Cost: 60.
  3. Quantity: 1.

So in this example, there are three criteria to perform a Match. Below are the steps for the search based on multiple criteria-

Step 1: First match Food Column (B3:B10) with Pasta using the formula:

"PASTA" = B3:B10 

This will convert B3:B10 (Food Column) values as Boolean. That Is True where Food is Pasta else False. 

Step 2: After that, match Cost criteria in the following manner:

60 = D3:D10

This will replace D3:D10 (Cost Column) values as Boolean. That is True where Cost=60 else False. 

Step 3: Next step is to match the third criteria that are Quantity = 1 in the following manner:

1 = E3:E10

This will replace E3:E10 Column (Quantity Column) as True where Quantity = 1 else it will be False.

Step 4: Multiply the result of the first, second, and third criteria. This will be the intersection of all conditions and convert Boolean True / False as 1/0.

Step 5: Now the result will be a Column with 0 And 1. Here use the MATCH Function to find the row number of columns that contain 1. Because if a column is having the value 1, then it means it satisfies all three criteria. 

Step 6: After getting the row number use the INDEX function to get the total cost of that row. 

=INDEX(F3:F10, MATCH(1, ("Pasta"=B3:B10) *  (60=D3:D10) * (1=E3:E10) , 0 ))

 Here F3:F10 represents the Total Cost Column.                      

Multiple Criteria Lookup

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

Функция ВПР()

Формула ВПРПредположим, у вас есть таблица с данными о работниках. В первой колонке хранится табельный номер сотрудника, в остальных – другие данные (ФИО, отдел и т.д.). Если у вас есть табельный номер, то можно воспользоваться функцией ВПР, чтобы вернуть определенную информацию о сотруднике. Синтаксис формулы =ВПР(искомое_значение; таблица; номер_столбца; [интервальный_просмотр]). Она говорит Excel: «Найди в таблице строку, первая ячейка которой совпадает с искомым_значением, и верни значение ячейки с порядковым номером номер_столбца».

формула ВПР не работаетНо случаются ситуации, когда у вас есть имя сотрудника и необходимо вернуть табельный номер. На рисунке в ячейке A10 – имя работника и требуется определить табельный номер в ячейке B10.

Когда ключевое поле находится правее данных, которые вы хотите получить, ВПР не поможет. Если, конечно, была бы возможность задать номер_столбца -1, тогда проблем бы не было. Одним из распространенных решений является добавление нового столбца A, копирование имен сотрудников в этот столбец, заполнить табельные номера с помощью ВПР, сохранить их как значения и удалить временную колонку A.

Функция ИНДЕКС()

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

Начнем с функции ИНДЕКС. Кошмарное название. Когда кто-нибудь говорит «индекс», у меня в голове не возникает ни единой ассоциации, чем же занимается эта функция. А требует она целых три аргумента: =ИНДЕКС(массив; номер_строки; [номер_столбца]).

Говоря по-простому, Excel идет в массив данных и возвращает значение, находящееся на пересечении указанной строки и столбца. Как будто бы просто. Таким образом, формула =ИНДЕКС($A$2:$C$6;4;2) вернет значение, находящееся в ячейке B5.

формула ИНДЕКС

Применительно к нашей проблеме, чтобы вернуть табельный номер работника, формула должна выглядеть следующим образом =ИНДЕКС($A$2:$A$6;?;1). Выглядит как бессмыслица, но если мы заменим знак вопроса формулой ПОИСКПОЗ, у нас есть решение.

Функция ПОИСКПОЗ()

Синтаксис этой функции таков: =ПОИСКПОЗ(искомое_значение; просматриваемы_массив; [тип_сопоставления]).

Она говорит Excel: «Найди искомое_значение  в массиве данных и верни номер строки массива, в которой это значение встречается». Таким образом, чтобы найти в какой строке находиться имя сотрудника в ячейке A10, необходимо прописать формулу =ПОИСКПОЗ(A10; $B$2:$B$6; 0). Если в ячейке A10 будет имя «Колин Фарел», тогда ПОИСКПОЗ вернет 5-ю строку массива B2:B6.

Описание формулы ПОИСКПОЗ

Ну, в принципе, все. Функция ПОИСКПОЗ указывает функции ИНДЕКС, в какой строке искать значение. Замените знак вопроса в формуле ИНДЕКС формулой ПОИСКОПОЗ и вы получите эквивалент ВПР с возможностью поиска данных, находящихся левее ключевого столбца. Получиться так:

=ИНДЕКС($A$2:$B$6;ПОИСКПОЗ(A10;$B$2:$B$6;0);1)

формула индекс и поискпоз

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

формула индекс и поискпоз результат

Функция ПОИСКПОЗ() в MS EXCEL

Функция ПОИСКПОЗ( ) , английский вариант MATCH(), возвращает позицию значения в диапазоне ячеек. Например, если в ячейке А10 содержится значение «яблоки», то формула =ПОИСКПОЗ («яблоки»;A9:A20;0) вернет 2, т.е. искомое значение «яблоки» содержится во второй ячейке диапазона A9:A20:А9 — первая ячейка (предполагается, что в ней не содержится значение «яблоки»), А10 — вторая, А11 — третья и т.д. (подсчет позиции производится от верхней ячейки).

Функция ПОИСКПОЗ() возвращает позицию искомого значения, а не само значение. Например: ПОИСКПОЗ(«б»;<«а»;»б»;»в»;»б»>;0) возвращает число 2 — относительную позицию буквы «б» в массиве <«а»;»б»;»в»;»б»>. Позиция второй буквы «б» будет проигнорирована, функция вернет позицию только первой буквы. О том как вернуть ВСЕ позиции искомого значения читайте ниже в разделе Поиск позиций ВСЕХ текстовых значений, удовлетворяющих критерию.

Синтаксис функции

ПОИСКПОЗ(искомое_значение; просматриваемый_массив; тип_сопоставления)

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

Просматриваемый_массив — непрерывный диапазон ячеек, возможно, содержащих искомые значения. Просматриваемый_массив может быть только одностолбцовым диапазоном ячеек, например А9:А20 или диапазоном, расположенным в одной строке, например, А2:Е2. Таким образом формула =ПОИСКПОЗ(«слива»;A30:B33;0) работать не будет (выдаст ошибку #Н/Д), так как Просматриваемый_массив представляет собой диапазон ячеек размещенный одновременно в нескольких столбцах и нескольких ячейках.

Тип_сопоставления — число -1, 0 или 1. Тип_сопоставления указывает, как MS EXCEL сопоставляет искомое_значение со значениями в аргументе просматриваемый_массив.

  • Если тип_сопоставления равен 0, то функция ПОИСКПОЗ() находит первое значение, которое в точности равно аргументу искомое_значение. Просматриваемый_массив может быть не упорядочен.
  • Если тип_сопоставления равен 1, то функция ПОИСКПОЗ() находит наибольшее значение, которое меньше либо равно, чем искомое_значение. Просматриваемый_массив должен быть упорядочен по возрастанию: . -2, -1, 0, 1, 2, . A-Z, ЛОЖЬ, ИСТИНА. Если тип_сопоставления опущен, то предполагается, что он равен 1.
  • Если тип_сопоставления равен -1, то функция ПОИСКПОЗ() находит наименьшее значение, которое больше либо равно чем искомое_значение. Просматриваемый_массив должен быть упорядочен по убыванию: ИСТИНА, ЛОЖЬ, Z-A, . 2, 1, 0, -1, -2, . и так далее.

Функция ПОИСКПОЗ() не различает РеГИстры при сопоставлении текстов.

Если функция ПОИСКПОЗ() не находит соответствующего значения, то возвращается значение ошибки #Н/Д.

Поиск позиции в массивах с текстовыми значениями

Произведем поиск позиции в НЕ сортированном списке текстовых значений (диапазон B7:B13)

Столбец Позиция приведен для наглядности и не влияет на вычисления.

Формула для поиска позиции значения Груши: =ПОИСКПОЗ(«груши»;B7:B13;0)

Формула находит первое значение сверху и выводит его позицию в диапазоне, второе значение Груши учтено не будет.

Чтобы найти номер строки, а не позиции в искомом диапазоне, можно записать следующую формулу: =ПОИСКПОЗ(«груши»;B7:B13;0)+СТРОКА($B$6)

Если искомое значение не обнаружено в списке, то будет возвращено значение ошибки #Н/Д. Например, формула =ПОИСКПОЗ(«грейпфрут»;B7:B13;0) вернет ошибку, т.к. значения «грейпфрут» в диапазоне ячеек B7:B13 нет.

В файле примера можно найти применение функции при поиске в горизонтальном массиве.

Поиск значений в списке данных

Примечание: Мы стараемся как можно оперативнее обеспечивать вас актуальными справочными материалами на вашем языке. Эта страница переведена автоматически, поэтому ее текст может содержать неточности и грамматические ошибки. Для нас важно, чтобы эта статья была вам полезна. Просим вас уделить пару секунд и сообщить, помогла ли она вам, с помощью кнопок внизу страницы. Для удобства также приводим ссылку на оригинал (на английском языке).

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

В этой статье

Поиск значений в списке по вертикали по точному совпадению

Для выполнения этой задачи можно использовать функцию ВПР или сочетание функций индекс и ПОИСКПОЗ.

Примеры использования функции ВПР

Дополнительные сведения можно найти в разделе функция ВПР.

Примеры ИНДЕКСов и СОВПАДЕНИй

=ИНДЕКС(нужно вернуть значение из C2:C10, которое будет соответствовать ПОИСКПОЗ(первое значение «Капуста» в массиве B2:B10))

Формула ищет первое значение в ячейке C2: C10, соответствующее капусты (в B7), и возвращает значение в C7 (100) — первое значение, соответствующее капусты.

Дополнительные сведения можно найти в разделе Функция индекс и функция ПОИСКПОЗ.

Поиск значений в списке по вертикали по приблизительному совпадению

Для этого используйте функцию ВПР.

Важно: Убедитесь, что значения в первой строке отсортированы в возрастающем порядке.

В приведенном выше примере функция ВПР ищет имя учащегося, у которого есть 6 тардиес в диапазоне A2: B7. В таблице нет записи для 6 тардиес, поэтому функция ВПР ищет следующее самое высокое соответствие ниже 6 и находит значение 5, связанное с первым именем Дэйв, и, следовательно, возвращает Дэйв.

Дополнительные сведения можно найти в разделе функция ВПР.

Поиск значений по вертикали в списке неизвестного размера с точным соответствием

Для выполнения этой задачи используйте функции СМЕЩ и ПОИСКПОЗ.

Примечание: Этот подход используется, если данные находятся в диапазоне внешних данных, который вы обновляете каждый день. Вы знаете, что в столбце B есть Цена, но вы не знаете, сколько строк данных возвращает сервер, а первый столбец не отсортирован по алфавиту.

C1 — это верхняя левая ячейка диапазона (также называемая начальной ячейкой).

Match («апельсины»; C2: C7; 0) ищет оранжевый цвет в диапазоне C2: C7. Не следует включать начальную ячейку в диапазон.

1 — количество столбцов справа от начальной ячейки, для которых должно быть возвращено возвращаемое значение. В нашем примере возвращаемое значение находится в столбце D, Sales.

Поиск значений в списке по горизонтали по точному совпадению

Для выполнения этой задачи используется функция ГПР. Ниже приведен пример.

Функция ГПР выполняет поиск по столбцу Sales и возвращает значение из строки 5 в указанном диапазоне.

Дополнительные сведения можно найти в разделе функции ГПР.

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

Для выполнения этой задачи используется функция ГПР.

Важно: Убедитесь, что значения в первой строке отсортированы в возрастающем порядке.

В приведенном выше примере функция ГПР ищет значение 11000 в строке 3 в указанном диапазоне. Он не находит 11000 и, следовательно, ищет следующее наибольшее значение, которое меньше 1100 и возвращает число 10543.

Дополнительные сведения можно найти в разделе функции ГПР.

Создание формулы подстановки с помощью мастера подстановок (толькоExcel 2007 )

Примечание: Надстройка «Мастер подстановок» прекращена в Excel 2010. Эти функциональные возможности заменены мастером функций и доступными функциями поиска и работы со ссылками (ссылками).

В Excel 2007 мастер подстановок создает формулу подстановки на основе данных листа, имеющих заголовки строк и столбцов. Мастер подстановок помогает находить другие значения в строке, когда вы знаете значение в одном столбце, и наоборот. Мастер подстановок использует индекс и СОВПАДЕНИе в создаваемых формулах.

Щелкните ячейку в диапазоне.

На вкладке формулы в группе решения нажмите кнопку Подстановка .

Если команда подстановка недоступна, необходимо загрузить мастер подстановок надстройка программу.

Загрузка программы-надстройки «Мастер подстановок»

Нажмите кнопку Microsoft Office , щелкните Параметры Excelи выберите категорию надстройки.

В поле Управление выберите элемент Надстройки Excel и нажмите кнопку Перейти.

В диалоговом окне надстройки установите флажок Мастер подстановоки нажмите кнопку ОК.

Поиск всех значений по условию в excel

В данной статье рассмотрены некоторые функции по работе со ссылками и массивами:

Функция ВПР

Вертикальное первое равенство. Ищет совпадение по ключу в первом столбце определенного диапазона и возвращает значение из указанного столбца этого диапазона в совпавшей с ключом строке.

Синтаксис: =ВПР(ключ; диапазон; номер_столбца; [интервальный_просмотр]), где

  • ключ – обязательный аргумент. Искомое значение, для которого необходимо вернуть значение.
  • диапазон – обязательный аргумент. Таблица, в которой необходимо найти значение по ключу. Первый столбец таблицы (диапазона) должен содержать значение совпадающее с ключом, иначе будет возвращена ошибка #Н/Д.
  • номер_столбца – обязательный аргумент. Порядковый номер столбца в указанном диапазоне из которого необходимо возвратить значение в случае совпадения ключа.
  • интервальный_просмотр – необязательный аргумент. Логическое значение указывающее тип просмотра:
    • ЛОЖЬ – функция ищет точное совпадение по первому столбцу таблицы. Если возможно несколько совпадений, то возвращено будет самое первое. Если совпадение не найдено, то функция возвращает ошибку #Н/Д.
    • ИСТИНА – функция ищет приблизительное совпадение. Является значением по умолчанию. Приблизительное совпадение означает, если не было найдено ни одного совпадения, то функция вернет значение предыдущего ключа. При этом предыдущим будет считаться тот ключ, который идет перед искомым согласно сортировке от меньшего к большему либо от А до Я. Поэтому, перед применением функции с данным интервальным просмотром, предварительно отсортируйте первый столбец таблицы по возрастанию, так как, если это не сделать, функция может вернуть неправильный результат. Когда найдено несколько совпадений, возвращается последнее из них.

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

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

Для цены необходимо использовать функцию ВПР с точным совпадением (интервальный просмотр ЛОЖЬ), так как данный параметр определен для всех товаров и не предусматривает использование цены другого товара, если вдруг она по случайности еще не определена.

Для определения расположения товара используется ВПР с приблизительным совпадением (интервальный просмотр ИСТИНА), так как распределение товара осуществляется по категориям. Из-за того, что наименование товара состоит из названия категории плюс дополнительный текст, по условиям сортировки от А до Я наименования товаров будут идти сразу после наименования категории, поэтому когда в таблице не обнаруживается совпадений с ключом подтягивается первое значение сверху.

В принципе, данный подход устраивал бы, если для товаров, для которых отсутствует категория, не подтягивалось расположение. Обратите внимание на товар «Лук Подмосковье». Для него определено расположение «Стелаж №2», хотя в первой таблице нет категории «Лук». Это происходит все по тем же причинам, когда функцией не обнаруживается равенств, то она определяет для значения значение меньшего самого близкого по сортировке ключа, а для «Лук Подмосковье» это категория «Картофель».

Он подобного эффекта можно избавиться путем определения категории из наименования товара используя текстовые функции ЛЕВСИМВ(C11;ПОИСК(» «;C11)-1), которые вернут все символы до первого пробела, а также изменить интервальный просмотр на точный.

Помимо всего описанного, функция ВПР позволяет применять для текстовых значений подстановочные символы – * (звездочка – любое количество любых символов) и ? (один любой символ). Например, для искомого значения «*» & «иван» & «*» могут подойти строки Иван, Иванов, диван и т.д.

Также данная функция может искать значения в массивах – =ВПР(1;<2;»Два»:1;»Один»>;2;ЛОЖЬ) – результат выполнения строка «Два».

Функция ГПР

Горизонтальное первое равенство. Ищет совпадение по ключу в первой строке определенного диапазона и возвращает значение из указанной строки этого диапазона в совпавшем с ключом столбце.

Синтаксис: =ГПР(ключ; диапазон; номер_строки; [интервальный_просмотр]).

Так как функция аналогична функции ВПР, за исключением того, что использует горизонтальные таблицы вместо вертикальных, то описания и примеры использования подходят и для ГПР с учетом упомянутых различий.

Функция СТРОКА

Определяет и возвращает номер строки указанной ссылкой ячейки.

Синтаксис: =СТРОКА([ссылка]), где аргумент «ссылка» не является обязательным. Если он опущен, но возвращается номер текущей строки.

=СТРОКА(D4) – результат 4.
=СТРОКА() – функция вернет номер строки, в которой она расположена.

Функция СТОЛБЕЦ

Возвращает номер столбца ячейки, указанной ссылкой.

Синтаксис: =СТОЛБЕЦ([ссылка]), где «ссылка» не обязательный аргумент. По умолчанию возвращается номер текущего столбца.

=СТОЛБЕЦ(C4) – формула вернет значение 3.
=СТОЛБЕЦ() – функция возвращает номер столбца, в котором расположена.

Функция АДРЕС

Возвращает текст, представляющий адрес ячейки, заданной номерами строки и столбца.

Синтаксис: =АДРЕС(строка; столбец; [тип_закрепления]; [стиль_ссылки]; [имя_листа]), где:

  • Строка – обязательный аргумент. Число, представляющая номер строки, для которой необходимо вернуть адрес;
  • Столбец – обязательный аргумент. Число, представляющее номер столбца целевой ячейки.
  • тип_закрепления – необязательный аргумент. Число от 1 до 4, обозначающее закрепление индексов ссылки:
    • 1 – значение по умолчанию, когда закреплены все индексы;
    • 2 – закрепление индекса строки;
    • 3 – закрепление индекса столбца;
    • 4 – адрес без закреплений.
  • стиль_ссылки – необязательный аргумент. Логическое значение:
    • ИСТИНА – формат ссылок «A1»;
    • ЛОЖЬ – формат ссылок «R1C1».
  • имя_листа – необязательный аргумент. Строка, представляющая имя листа, который необходимо добавить к тексту адреса ячейки.

=АДРЕС(1;1) – возвращает $A$1.
=АДРЕС(1;1;4) – возвращает A1.
=АДРЕС(1;1;4;ЛОЖЬ) – результат R[1]C[1].
=АДРЕС(1;1;4;ЛОЖЬ;»Лист1″) – результат выполнения функции Лист1!R[1]C[1].

Функция ДВССЫЛ

Преобразует адрес ссылки, заданный текстовой строкой, в ссылку на данный адрес.

Синтаксис: =ДВССЫЛ(адрес_ссылки; [стиль_ссылки]), где

  • адрес_ссылки – обязательный аргумент. Строка, представляющая адрес ссылки на ячейку или диапазон. Например, «C3», «R3C3» или «D8:D9».
  • стиль_ссылки – необязательный аргумент. Логическое значение, определяющее стиль ссылки:
    • ИСТИНА – стиль A1. Является значением по умолчанию;
    • ЛОЖЬ – стиль R1C1.

=ДВССЫЛ(«a3») – возвращает ссылку на ячейку A3.
=ДВССЫЛ(«r3c3») – вернет ошибку #ССЫЛКА!, так как текст для ссылки в формате R1C1, а второй аргумент имеет значение по умолчанию.
=ДВССЫЛ(«r3c3»; ЛОЖЬ) – возвращает ссылку на ячейку C3.
=ДВССЫЛ(АДРЕС(СТРОКА(C3);СТОЛБЕЦ(C3))) – функция вернет аналогичный предыдущему примеру результат.
Вложение функции ДВССЫЛ со ссылкой на диапазон:

Функция ЧСТРОК

Возвращает число строк в указанном диапазоне или массиве.

Синтаксис: =ЧСТРОК(ссылка), где «ссылка» обязательный аргумент, являющийся ссылкой на ячейку, диапазон либо массив.

Пример использования:
=ЧСТРОК(D1:D8) – функция возвращает результат 8.
=ЧСТРОК(<1:2:3:4:5>) – функция определят, что в массиве 5 строк.

Функция ЧИСЛСТОЛБ

Возвращает число столбцов в указанном диапазоне или массиве.
Синтаксис: =ЧИСЛСТОЛБ(ссылка), где «ссылка» обязательный аргумент, являющийся ссылкой на ячейку, диапазон либо массив.
Пример использования:
=ЧИСЛСТОЛБ(A5:D5) – результат функции 4.
=ЧИСЛСТОЛБ(<1;2;3;4;5>) – функция определят, что в массиве 5 столбцов.

Функция СМЕЩ

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

Синтаксис: =СМЕЩ(ссылка; смещ_по_строкам; смещ_по_столбцам; [высота]; [ширина]), где

    ссылка – обязательный аргумент.

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

  • смещ_по_строкам – обязательный аргумент. Отрицательное либо положительное число, указывающее, на какое количество строк необходимо сместить диапазон.
  • смещ_по_столбцам – обязательный аргумент. Отрицательное либо положительное число, указывающее, на какое количество столбцов необходимо сместить диапазон.
  • высота – необязательный аргумент. Натуральное число (кроме нуля), определяющее количество строк в новом (смещенном) диапазоне.
  • ширина – необязательный аргумент. Натуральное число (кроме нуля), определяющее количество столбцов в новом диапазоне.
  • Если в результате смещения диапазон стал выходить на пределы листа, то функция возвращает ошибку #ССЫЛКА!.

    Для примера будем использовать вложение функции СМЕЩ в функцию СУММ.
    Изначально ссылаемся на диапазон из 10 строк и 1 столбца, где все ячейки имеют значение 2. Таким образом получает результат выполнения формулы – 20.

    Теперь сместим диапазон на один столбец влево, т.е. на -1.

    Снова изменим ссылку, а именно расширим до 4 столбцов. После этого возвращаемая ссылка станет A3:D12. Результат на изображении.

    Функция ПОИСКПОЗ

    Возвращает позицию элемента, заданного по значению, в диапазоне либо массиве.

    Синтаксис: =ПОИСКПОЗ(искомое_значение; массив; [тип_сопоставления]), где:

    • искомое_значение – обязательный аргумент. Значение элемента, который необходимо найти в массиве.
    • Массив – обязательный аргумент. Одномерный диапазон либо массив для поиска элемента.
    • тип_сопоставления – необязательный аргумент. Число 1, 0 или -1, определяющее способ поиска элемента:
      • 1 – значение по умолчанию. Если совпадений не найдено, то возвращается позиция ближайшего меньшего по значению к искомому элементу. Массив или диапазон должен быть отсортирован от меньшего к большему или от А до Я.
      • 0 – функция ищет точное совпадение. Если не найдено, то возвращается ошибка #Н/Д.
      • -1 – Если совпадений не найдено, то возвращается позиция ближайшего большего по значению к искомому элементу. Массив или диапазон должен быть отсортирован по убыванию.

    Пример использования:
    =ПОИСКПОЗ(«Г»; <«а»;»б»;»в»;»г»;»д»>) – функция возвращает результат 4.

    Функция ПОИСКПОЗ в Excel

    При этом регистр не учитывается.
    =ПОИСКПОЗ(«е»; <«а»;»б»;»в»;»г»;»д»>; 1) – результат 5, т.к. элемента не найдено, поэтому возвращается ближайший меньший по значению элемент. Элементы массива записаны по возрастанию.
    =ПОИСКПОЗ(«е»; <«а»;»б»;»в»;»г»;»д»>; 0) – возвращается ошибка, т.к. элемент не найден, а тип сопоставления указан на точное совпадение.
    =ПОИСКПОЗ(«в»; <«д»;»г»;»в»;»б»;»а»>; -1) – результат 3.
    =ПОИСКПОЗ(«д»; <«а»;»б»;»в»;»г»;»д»>; -1) – элемент не найден, хотя присутствует в массиве. Функция возвращает неверный результат, так как последний аргумент принимает значение -1, а элементы НЕ расположены по убыванию.

    Для текстовых значений функция допускает использование подстановочных символов «*» и «?».

    Если материалы office-menu.ru Вам помогли, то поддержите, пожалуйста, проект, чтобы мы могли развивать его дальше.

    У Вас недостаточно прав для комментирования.

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

    Постановка задачи

    Если вы продвинутый пользователь Microsoft Excel, то должны быть знакомы с функцией поиска и подстановки ВПР или VLOOKUP (если еще нет, то сначала почитайте эту статью, чтобы им стать). Для тех, кто понимает, рекламировать ее не нужно 🙂 — без нее не обходится ни один сложный расчет в Excel. Есть, однако, одна проблема: эта функция умеет искать данные только по совпадению одного параметра. А если у нас их несколько?

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

    Нужно найти и вытащить цену заданного товара (Нектарин) в определенном месяце (Январь), т.е. получить на выходе152, но автоматически, т.е. с помощью формулы. ВПР в чистом виде тут не поможет, но есть несколько других способов решить эту задачу.

    Способ 1. Дополнительный столбец с ключом поиска

    Это самый очевидный и простой (хотя и не самый удобный) способ. Поскольку штатная функция ВПР (VLOOKUP) умеет искать только по одному столбцу, а не по нескольким, то нам нужно из нескольких сделать один!

    Добавим рядом с нашей таблицей еще один столбец, где склеим название товара и месяц в единое целое с помощью оператора сцепки (&), чтобы получить уникальный столбец-ключ для поиска:

    Теперь можно использовать знакомую функцию ВПР (VLOOKUP) для поиска склеенной пары НектаринЯнварь из ячеек H3 и J3 в созданном ключевом столбце:

    Плюсы : Простой способ, знакомая функция, работает с любыми данными.

    Минусы : Надо делать дополнительный столбец и потом, возможно, еще и прятать его от пользователя. При изменении числа строк в таблице — допротягивать формулу сцепки на новые строки (хотя это можно упростить применением умной таблицы).

    Способ 2. Функция СУММЕСЛИМН

    Если нужно найти именно число (в нашем случае цена как раз число), то вместо ВПР можно использовать функцию СУММЕСЛИМН (SUMIFS) , появившуюся начиная с Excel 2007. По идее, эта функция выбирает и суммирует числовые значения по нескольким (до 127!) условиям. Но если в нашем списке нет повторяющихся товаров внутри одного месяца, то она просто выведет значение цены для заданного товара и месяца:

    Плюсы : Не нужен дополнительный столбец, решение легко масштабируется на большее количество условий (до 127), быстро считает.

    Минусы : Работает только с числовыми данными на выходе, не применима для поиска текста, не работает в старых версиях Excel (2003 и ранее).

    Способ 3. Формула массива

    О том, как спользовать связку функций ИНДЕКС (INDEX) и ПОИСКПОЗ (MATCH) в качестве более мощной альтернативы ВПР я уже подробно описывал (с видео). В нашем же случае, можно применить их для поиска по нескольким столбцам в виде формулы массива. Для этого:

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

  • Нажмите в конце не Enter, а сочетание Ctrl+Shift+Enter, чтобы ввести формулу не как обычную, а как формулу массива.
  • Как это на самом деле работает:

    Функция ИНДЕКС выдает из диапазона цен C2:C161 содержимое N-ой ячейки по порядку. При этом порядковый номер нужной ячейки нам находит функция ПОИСКПОЗ. Она ищет связку названия товара и месяца (НектаринЯнварь) по очереди во всех ячейках склеенного из двух столбцов диапазона A2:A161&B2:B161 и выдает порядковый номер ячейки, где нашла точное совпадение. По сути, это первый способ, но ключевой столбец создается виртуально прямо внутри формулы, а не в ячейках листа.

    Плюсы : Не нужен отдельный столбец, работает и с числами и с текстом.

    Минусы : Ощутимо тормозит на больших таблицах (как и все формулы массива, впрочем), особенно если указывать диапазоны «с запасом» или сразу целые столбцы (т.е. вместо A2:A161 вводить A:A и т.д.) Многим непривычны формулы массива в принципе (тогда вам сюда).

    Пример функции ПОИСКПОЗ для поиска совпадения значений в Excel

    Функция ПОИСКПОЗ в Excel используется для поиска точного совпадения или ближайшего (меньшего или большего заданному в зависимости от типа сопоставления, указанного в качестве аргумента) значения заданному в массиве или диапазоне ячеек и возвращает номер позиции найденного элемента.

    Примеры использования функции ПОИСКПОЗ в Excel

    Например, имеем последовательный ряд чисел от 1 до 10, записанных в ячейках B1:B10. Функция =ПОИСКПОЗ(3;B1:B10;0) вернет число 3, поскольку искомое значение находится в ячейке B3, которая является третьей от точки отсчета (ячейки B1).

    Данная функция удобна для использования в случаях, когда требуется вернуть не само значение, содержащееся в искомой ячейке, а ее координату относительно рассматриваемого диапазона. В случае использования для констант массивов, которые могут быть представлены как массивы элементов «ключ» — «значение», функция ПОИСКПОЗ возвращает значение ключа, который явно не указан.

    Например, массив <«виноград»;»яблоко»;»груша»;»слива»>содержит элементы, которые можно представить как: 1 – «виноград», 2 – «яблоко», 3 – «груша», 4 – «слива», где 1, 2, 3, 4 – ключи, а названия фруктов – значения. Тогда функция =ПОИСКПОЗ(«яблоко»;<«виноград»;»яблоко»;»груша»;»слива»>;0) вернет значение 2, являющееся ключом второго элемента. Отсчет выполняется не с 0 (нуля), как это реализовано во многих языках программирования при работе с массивами, а с 1.

    Функция ПОИСКПОЗ редко используется самостоятельно. Ее целесообразно применять в связке с другими функциями, например, ИНДЕКС.

    Формула для поиска неточного совпадения текста в Excel

    Пример 1. Найти позицию первого частичного совпадения строки в диапазоне ячеек, хранящих текстовые значения.

    Вид исходной таблицы данных:

    Для нахождения позиции текстовой строки в таблице используем следующую формулу:

    Из полученного значения вычитается единица для совпадения результата с id записи в таблице.

    Сравнение двух таблиц в Excel на наличие несовпадений значений

    Пример 2. В Excel хранятся две таблицы, которые на первый взгляд кажутся одинаковыми. Было решено сравнить по одному однотипному столбцу этих таблиц на наличие несовпадений. Реализовать способ сравнения двух диапазонов ячеек.

    Вид таблицы данных:

    Для сравнения значений, находящихся в столбце B:B со значениями из столбца A:A используем следующую формулу массива (CTRL+SHIFT+ENTER):

    Функция ПОИСКПОЗ выполняет поиск логического значения ИСТИНА в массиве логических значений, возвращаемых функцией СОВПАД (сравнивает каждый элемент диапазона A2:A12 со значением, хранящимся в ячейке B2, и возвращает массив результатов сравнения). Если функция ПОИСКПОЗ нашла значение ИСТИНА, будет возвращена позиция его первого вхождения в массив. Функция ЕНД возвратит значение ЛОЖЬ, если она не принимает значение ошибки #Н/Д в качестве аргумента. В этом случае функция ЕСЛИ вернет текстовую строку «есть», иначе – «нет».

    Чтобы вычислить остальные значения «протянем» формулу из ячейки C2 вниз для использования функции автозаполнения. В результате получим:

    Как видно, третьи элементы списков не совпадают.

    Поиск ближайшего большего знания в диапазоне чисел Excel

    Пример 3. Найти ближайшее меньшее числу 22 в диапазоне чисел, хранящихся в столбце таблицы Excel.

    Вид исходной таблицы данных:

    Для поиска ближайшего большего значения заданному во всем столбце A:A (числовой ряд может пополняться новыми значениями) используем формулу массива (CTRL+SHIFT+ENTER):

    Функция ПОИСКПОЗ возвращает позицию элемента в столбце A:A, имеющего максимальное значение среди чисел, которые больше числа, указанного в ячейке B2. Функция ИНДЕКС возвращает значение, хранящееся в найденной ячейке.

    Для поиска ближайшего меньшего значения достаточно лишь немного изменить данную формулу и ее следует также ввести как массив (CTRL+SHIFT+ENTER):

    Особенности использования функции ПОИСКПОЗ в Excel

    Функция имеет следующую синтаксическую запись:

    =ПОИСКПОЗ( искомое_значение;просматриваемый_массив; [тип_сопоставления])

    • искомое_значение – обязательный аргумент, принимающий текстовые, числовые значения, а также данные логического и ссылочного типов, который используется в качестве критерия поиска (для сопоставления величин или нахождения точного совпадения);
    • просматриваемый_массив – обязательный аргумент, принимающий данные ссылочного типа (ссылки на диапазон ячеек) или константу массива, в которых выполняется поиск позиции элемента согласно критерию, заданному первым аргументом функции;
    • [тип_сопоставления] – необязательный для заполнения аргумент в виде числового значения, определяющего способ поиска в диапазоне ячеек или массиве. Может принимать следующие значения:
    1. -1 – поиск наименьшего ближайшего значения заданному аргументом искомое_значение в упорядоченном по убыванию массиве или диапазоне ячеек.
    2. 0 – (по умолчанию) поиск первого значения в массиве или диапазоне ячеек (не обязательно упорядоченном), которое полностью совпадает со значением, переданным в качестве первого аргумента.
    3. 1 – Поиск наибольшего ближайшего значения заданному первым аргументом в упорядоченном по возрастанию массиве или диапазоне ячеек.
    1. Если в качестве аргумента искомое_значение была передана текстовая строка, функция ПОИСКПОЗ вернет позицию элемента в массиве (если такой существует) без учета регистра символов. Например, строки «МоСкВа» и «москва» являются равнозначными. Для различения регистров можно дополнительно использовать функцию СОВПАД.
    2. Если поиск с использованием рассматриваемой функции не дал результатов, будет возвращен код ошибки #Н/Д.
    3. Если аргумент [тип_сопоставления] явно не указан или принимает число 0, для поиска частичного совпадения текстовых значений могут быть использованы подстановочные знаки («?» — замена одного любого символа, «*» — замена любого количества символов).
    4. Если в объекте данных, переданном в качестве аргумента просматриваемый_массив, содержится два и больше элементов, соответствующих искомому значению, будет возвращена позиция первого вхождения такого элемента.

    Понравилась статья? Поделить с друзьями:

    А вот еще интересные статьи:

  • Строка состояния excel отобразить
  • Строка поиска в таблице excel
  • Строка состояния excel изменить
  • Строка поиска в excel формула
  • Строка состояния excel 2007 как

  • 0 0 голоса
    Рейтинг статьи
    Подписаться
    Уведомить о
    guest

    0 комментариев
    Старые
    Новые Популярные
    Межтекстовые Отзывы
    Посмотреть все комментарии