Примеры функции индекс и поискпоз с несколькими условиями excel
Содержание:
- ПОИСК, ПОИСКБ (функции ПОИСК, ПОИСКБ)
- Ошибки
- 5 вариантов использования функции ИНДЕКС (INDEX)
- Функции ПОИСКПОЗ() и ИНДЕКС()
- Поиск ТЕКСТовых значений в Excel. Бесплатные примеры и статьи.
- Выделение ячеек c ТЕКСТом с применением Условного форматирования в MS EXCEL
- Есть ли слово в списке MS EXCEL
- Поиск ТЕКСТовых значений в MS EXCEL с выводом их в отдельный список. Часть1. Обычный поиск
- Поиск позиции ТЕКСТа в MS EXCEL с выводом значения из соседнего столбца
- Поиск позиции ТЕКСТа с учетом РЕгиСТра в MS EXCEL и выводом значения из соседнего столбца
- Поиск в MS EXCEL текстового значения первого или последнего по алфавиту
- Разнесение в MS EXCEL ТЕКСТовых значений и ЧИСЕЛ по разным спискам
- Поиск в MS EXCEL третьего (n-го) повтора в списках с ТЕКСТом
- О классификации задач Поиска в EXCEL
- Поиск нескольких значений с максимальной длиной строки в MS EXCEL
- Поиск позиций ВСЕХ текстовых значений, удовлетворяющих критерию
- Функция ПОИСКПОЗ
- Строка поиска в Excel
- Функции ИНДЕКС и ПОИСКПОЗ в Excel на простых примерах
- Особенности использования функции ПОИСКПОЗ в Excel
ПОИСК, ПОИСКБ (функции ПОИСК, ПОИСКБ)
Примечание: Мы стараемся как можно оперативнее обеспечивать вас актуальными справочными материалами на вашем языке. Эта страница переведена автоматически, поэтому ее текст может содержать неточности и грамматические ошибки
Для нас важно, чтобы эта статья была вам полезна. Просим вас уделить пару секунд и сообщить, помогла ли она вам, с помощью кнопок внизу страницы
Для удобства также приводим ссылку на оригинал (на английском языке).
В этой статье описаны синтаксис формулы и использование функций ПОИСК и ПОИСКБ в Microsoft Excel.
Функции ПОИСК И ПОИСКБ находят одну текстовую строку в другой и возвращают начальную позицию первой текстовой строки (считая от первого символа второй текстовой строки). Например, чтобы найти позицию буквы «n» в слове «printer», можно использовать следующую функцию:
Эта функция возвращает 4, так как «н» является четвертым символом в слове «принтер».
Можно также находить слова в других словах. Например, функция
возвращает 5, так как слово «base» начинается с пятого символа слова «database». Можно использовать функции ПОИСК и ПОИСКБ для определения положения символа или текстовой строки в другой текстовой строке, а затем вернуть текст с помощью функций ПСТР и ПСТРБ или заменить его с помощью функций ЗАМЕНИТЬ и ЗАМЕНИТЬБ. Эти функции показаны в примере 1 данной статьи.
Эти функции могут быть доступны не на всех языках.
Функция ПОИСКБ отсчитывает по два байта на каждый символ, только если языком по умолчанию является язык с поддержкой БДЦС. В противном случае функция ПОИСКБ работает так же, как функция ПОИСК, и отсчитывает по одному байту на каждый символ.
К языкам, поддерживающим БДЦС, относятся японский, китайский (упрощенное письмо), китайский (традиционное письмо) и корейский.
Аргументы функций ПОИСК и ПОИСКБ описаны ниже.
Искомый_текст Обязательный. Текст, который требуется найти.
Просматриваемый_текст Обязательный. Текст, в котором нужно найти значение аргумента искомый_текст.
Начальная_позиция Необязательный. Номер знака в аргументе просматриваемый_текст, с которого следует начать поиск.
Функции ПОИСК и ПОИСКБ не учитывают регистр. Если требуется учитывать регистр, используйте функции НАЙТИ и НАЙТИБ.
В аргументе искомый_текст можно использовать подстановочные знаки: вопросительный знак (?) и звездочку (*). Вопросительный знак соответствует любому знаку, звездочка — любой последовательности знаков. Если требуется найти вопросительный знак или звездочку, введите перед ним тильду (
Если значение аргумента искомый_текст не найдено, #VALUE! возвращено значение ошибки.
Если аргумент начальная_позиция опущен, то он полагается равным 1.
Если Нач_позиция не больше 0 или больше, чем длина аргумента просматриваемый_текст , #VALUE! возвращено значение ошибки.
Аргумент начальная_позиция можно использовать, чтобы пропустить определенное количество знаков. Допустим, что функцию ПОИСК нужно использовать для работы с текстовой строкой «МДС0093.МужскаяОдежда». Чтобы найти первое вхождение «М» в описательной части текстовой строки, задайте для аргумента начальная_позиция значение 8, чтобы поиск не выполнялся в той части текста, которая является серийным номером (в данном случае — «МДС0093»). Функция ПОИСК начинает поиск с восьмого символа, находит знак, указанный в аргументе искомый_текст, в следующей позиции, и возвращает число 9. Функция ПОИСК всегда возвращает номер знака, считая от начала просматриваемого текста, включая символы, которые пропускаются, если значение аргумента начальная_позиция больше 1.
Скопируйте образец данных из следующей таблицы и вставьте их в ячейку A1 нового листа Excel. Чтобы отобразить результаты формул, выделите их и нажмите клавишу F2, а затем — клавишу ВВОД. При необходимости измените ширину столбцов, чтобы видеть все данные.
Ошибки
Когда пользователь ошибается при вводе данных или выборе диапазона, вместо результата отображаются различные ошибки: #Н/Д, #ЗНАЧ, #ССЫЛКА.
Ошибка #Н/Д появляется, если:
- Указанный диапазон не содержит искомый элемент.
- Искомый элемент меньше, чем минимальный в массиве.
- Задан точный поиск (аргумент «ЛОЖЬ» или 0), а искомого нет в диапазоне.
- Задан приблизительный поиск (аргумент «ИСТИНА» или 1), но данные не отсортированы по возрастанию.
- Разный формат (числовой и текстовый) у ячейки, откуда берется искомое, и ячейки с данными первого столбца.
- В коде есть пробелы или невидимые непечатаемые знаки.
- Используются значения времени или большие десятичные числа.
Во избежание ошибки #Н/Д, когда ВПР не находит значение, рекомендуется использовать следующую формулу: =ЕСЛИОШИБКА(ВПР(C2;A1:B12;2;ЛОЖЬ);0) – вместо 0 можно написать «не найдено».
Ошибка #ЗНАЧ появляется, если:
- В качестве номера столбца указано число 0.
- Длина первого аргумента превышает 255 знаков.
Ошибка #ССЫЛКА появляется, если третий аргумент больше количества столбцов в таблице.
5 вариантов использования функции ИНДЕКС (INDEX)
Бывает у вас такое: смотришь на человека и думаешь «что за @#$%)(*?» А потом при близком знакомстве оказывается, что он знает пять языков, прыгает с парашютом, имеет семеро детей и черный пояс в шахматах, да и, вообще, добрейшей души человек и умница?
Так и в Microsoft Excel: есть несколько похожих функций, про которых фраза «внешность обманчива» работает на 100%. Одна из наиболее многогранных и полезных — функция ИНДЕКС (INDEX) . Далеко не все пользователи Excel про нее знают, и еще меньше используют все её возможности. Давайте разберем варианты ее применения, ибо их аж целых пять.
Вариант 1. Извлечение данных из столбца по номеру ячейки
Самый простой случай использования функции ИНДЕКС – это ситуация, когда нам нужно извлечь данные из одномерного диапазона-столбца, если мы знаем порядковый номер ячейки. Синтаксис в этом случае будет:
=ИНДЕКС( Диапазон_столбец ; Порядковый_номер_ячейки )
Этот вариант известен большинству продвинутых пользователей Excel. В таком виде функция ИНДЕКС часто используется в связке с функцией ПОИСКПОЗ (MATCH) , которая выдает номер искомого значения в диапазоне. Таким образом, эта пара заменяет легендарную ВПР (VLOOKUP) :
. но, в отличие от ВПР, могут извлекать значения левее поискового столбца и номер столбца-результата высчитывать не нужно.
Вариант 2. Извлечение данных из двумерного диапазона
Если диапазон двумерный, т.е. состоит из нескольких строк и столбцов, то наша функция будет использоваться немного в другом формате:
=ИНДЕКС( Диапазон ; Номер_строки ; Номер_столбца )
Т.е. функция извлекает значение из ячейки диапазона с пересечения строки и столбца с заданными номерами.
Легко сообразить, что с помощью такой вариации ИНДЕКС и двух функций ПОИСКПОЗ можно легко реализовать двумерный поиск:
Вариант 3. Несколько таблиц
Если таблица не одна, а их несколько, то функция ИНДЕКС может извлечь данные из нужной строки и столбца именно заданной таблицы. В этом случае используется следующий синтаксис:
=ИНДЕКС( (Диапазон1;Диапазон2;Диапазон3) ; Номер_строки ; Номер_столбца ; Номер_диапазона )
Обратите особое внимание, что в этом случае первый аргумент – список диапазонов — заключается в скобки, а сами диапазоны перечисляются через точку с запятой
Вариант 4. Ссылка на столбец / строку
Если во втором варианте использования функции ИНДЕКС номер строки или столбца задать равным нулю (или просто не указать), то функция будет выдавать уже не значение, а ссылку на диапазон-столбец или диапазон-строку соответственно:
Обратите внимание, что поскольку ИНДЕКС выдает в этом варианте не конкретное значение ячейки, а ссылку на диапазон, то для подсчета потребуется заключить ее в дополнительную функцию, например СУММ (SUM) , СРЗНАЧ (AVERAGE) и т.п
Вариант 5. Ссылка на ячейку
Общеизвестно, что стандартная ссылка на любой диапазон ячеек в Excel выглядит как Начало-Двоеточие-Конец, например A2:B5. Хитрость в том, что если взять функцию ИНДЕКС в первом или втором варианте и подставить ее после двоеточия, то наша функция будет выдавать уже не значение, а адрес, и на выходе мы получим полноценную ссылку на диапазон от начальной ячейки до той, которую нашла ИНДЕКС:
Нечто похожее можно реализовать функцией СМЕЩ (OFFSET) , но она, в отличие от ИНДЕКС, является волатильной, т.е. пересчитывается каждый раз при изменении любой ячейки листа. ИНДЕКС же работает более тонко и запускает пересчет только при изменении своих аргументов, что ощутимо ускоряет расчет в тяжелых книгах по сравнению со СМЕЩ.
Один из весьма распространенных на практике сценариев применения ИНДЕКС в таком варианте — это сочетание с функцией СЧЁТЗ (COUNTA) , чтобы получить автоматически растягивающиеся диапазоны для выпадающих списков, сводных таблиц и т.д.
Функции ПОИСКПОЗ() и ИНДЕКС()
Функции ПОИСКПОЗ() и ИНДЕКС() часто используются вместе, т.к. позволяют по найденной позиции в одном диапазоне вывести соответствующее значение из другого диапазона. Рассмотрим пример.
Найдем количество заданного товара на определенном складе. Для этого используем формулу
В файле примера , соответствующий столбец и строка выделены с помощью Условного форматирования .
СОВЕТ: Подробнее о поиске позиций можно прочитать в соответствующем разделе сайта: Поиск позиции .
С помощью функций ПОИСКПОЗ() и ИНДЕКС() можно заменить функцию ВПР() , об этом читайте в статье о функции ВПР() .
Поиск ТЕКСТовых значений в Excel. Бесплатные примеры и статьи.
Выделение ячеек c ТЕКСТом с применением Условного форматирования в MS EXCEL
Выделяем ячейки, содержащие искомый текст. Рассмотрим разные варианты: выделение ячеек, содержащих значения в точности совпадающих с искомым текстом; выделение ячеек, которые содержат искомый текст в начале, в конце или середине строки. Также научимся выделять ячейку, в случае если ее значение совпадает с одним из нескольких заданных значений.
Есть ли слово в списке MS EXCEL
Найдем слово в диапазоне ячеек, удовлетворяющее критерию: точное совпадение с критерием, совпадение с учетом регистра, совпадение лишь части символов из слова и т.д.
Поиск ТЕКСТовых значений в MS EXCEL с выводом их в отдельный список. Часть1. Обычный поиск
Найдем текстовые значения, удовлетворяющие заданному пользователем критерию. Поиск будем осуществлять в диапазоне с повторяющимися значениями. При наличии повторов, можно ожидать, что критерию будет соответствовать несколько значений. Для их вывода в отдельный диапазон удобно использовать формулы массива.
Поиск позиции ТЕКСТа в MS EXCEL с выводом значения из соседнего столбца
Для нахождения позиции значения в столбце, с последующим выводом соответствующего значения из соседнего столбца в EXCEL, существует специальная функция ВПР() , но для ее решения можно использовать также и другие функции. Рассмотрим задачу в случае текстовых значений.
Поиск позиции ТЕКСТа с учетом РЕгиСТра в MS EXCEL и выводом значения из соседнего столбца
Здесь развиваются идеи статьи Поиск позиции ТЕКСТового значения с выводом соответствующего значения из соседнего столбца. Для нахождения позиции значения с учетом РЕгиСТра, с последующим выводом соответствующего значения из соседнего столбца, функция ВПР() применена быть не может, т.к. она не чувствительна к регистру. Задача может быть решена с помощи функций БИЗВЛЕЧЬ() , НАЙТИ() или СОВПАД() .
Поиск в MS EXCEL текстового значения первого или последнего по алфавиту
Найдем текстовое значение, которое при сортировке диапазона по возрастанию будет выведено первым, т.е. первое по алфавиту. Также найдем последнее значение по алфавиту.
Разнесение в MS EXCEL ТЕКСТовых значений и ЧИСЕЛ по разным спискам
Если исходный список, содержит и текст и числа, то с помощью формул массива можно в один список отобрать все текстовые значения, а в другой – числовые.
Поиск в MS EXCEL третьего (n-го) повтора в списках с ТЕКСТом
Рассмотрим поиск текстовых значений в списке с повторами. Задав в качестве критерия для поиска нужное текстовое значение и номер его повтора в списке, найдем номер строки, в которой содержится этот повтор, а также выделим его и другие повторы с помощью Условного форматирования.
О классификации задач Поиска в EXCEL
В этой статье изложены попытки классификации задач по поиску значений в MS EXCEL. Статья может быть интересна для продвинутых пользователей EXCEL.
Поиск нескольких значений с максимальной длиной строки в MS EXCEL
Найдем в исходном списке текстовые значения, которые имеют максимальную длину строки, и выведем их в отдельный диапазон.
Поиск позиций ВСЕХ текстовых значений, удовлетворяющих критерию
Функция ПОИСКПОЗ() возвращает только одно значение. Если в списке присутствует несколько значений, удовлетворяющих критерию, то эта функция не поможет.
Рассмотрим список с повторяющимися значениями в диапазоне B66:B72 . Найдем все позиции значения Груши .
Значение Груши находятся в позициях 2 и 5 списка. С помощью формулы массива
можно найти все эти позиции. Для этого необходимо выделить несколько ячеек (расположенных вертикально), в Строке формул ввести вышеуказанную формулу и нажать CTRL+SHIFT+ENTER . В позициях, в которых есть значение Груши будет выведено соответствующее значение позиции, в остальных ячейках быдет выведен 0.
можно отсортировать найденные позиции, чтобы номера найденных позиций отображались в первых ячейках (см. файл примера ).
Функция ПОИСКПОЗ
измените ширину столбцов, равно значению аргументаФункция и имеет более Затем одна таблица результата при использовании мощной альтернативы ВПР решить эту задачу. должна выполнятся вустановите флажок рядомПродажи функций ИНДЕКС и(ПОИСКПОЗ) отлично работает(ПОИСКПОЗ) в видеИспользовать вместе с не можем использоватьЧтобы убедиться в том, чтобы видеть все
Синтаксис
искомое_значение
ПОИСКПОЗ или менее следующий
-
умножается на другую. совершенно разных функций. я уже подробноЭто самый очевидный и массиве. Если все с пунктом. ПОИСКПОЗ. в сочетании с массива констант. ЕслиCHOOSE функцию ВПР. Для что использование приблизительного данные..выполняет поиск указанного вид: Выглядит это болееИтак, у нас есть
-
описывал (с видео). простой (хотя и сделано правильно вМастер подстановок
-
К началу страницыДополнительные сведения см. в функцией в ячейке D5(ВЫБОР), чтобы перевести поиска значения «Воронеж» совпадения может иметьПродуктПросматриваемый_массив элемента в диапазоне1*НЕ(ЕОШИБКА(ПОИСКПОЗ(F5;A2:A9;0))) или менее так, таблица, и мы В нашем же не самый удобный) строке формул появятсяи нажмите кнопкуДля выполнения этой задачи разделе, посвященном функцииINDEX ввести более поздний
успеваемость учащихся в |
в диапазоне B1:B11 |
серьезные последствия, предположим, |
Количестводолжен быть упорядочен ячеек и возвращаетИзменяются только выделенные фрагменты. как показано на бы хотели, чтобы случае, можно применить способ. Поскольку штатная фигурные скобки.ОК используется функция ГПР. ВПР.(ИНДЕКС), которую мы |
месяц, например, |
буквенную систему оценок. будет использоваться функция что ищется ценаБананы по возрастанию: …, относительную позицию этого Для каждого столбца рисунке ниже (пример формула Excel отвечала |
их для поиска |
функцияКак видно функция самостоятельно. См. пример ниже.Что означает: рассмотрим более пристальноOctИспользовать вместе с ПОИСКПОЗ. Оно найдено детали с идентификатором25 -2, -1, 0, элемента в диапазоне. с помощью функции |
-
для искомого выражения на вопрос, в по нескольким столбцамВПР (VLOOKUP) справилась с решениемСледуйте инструкциям мастера.Функция ГПР выполняет поиск=ИНДЕКС(нужно вернуть значение из чуть позже в(октябрь), то результатомVLOOKUP
-
в строке 4. 2345768, но выАпельсины 1, 2, …,
-
Например, если диапазон ПОИСКПОЗ, мы проверяем «Прогулка в парке»). каком столбце (или в виде формулы
-
умеет искать только поставленной задачи.К началу страницы по столбцу C2:C10, которое будет рамках данного марафона. функции будет(ВПР) для гибкого Затем функция ИНДЕКС перепутали две цифры38 A-Z, ЛОЖЬ, ИСТИНА. A1:A3 содержит значения удалось ли найтиВ результате мы получаем строке, однако в массива. Для этого: по одному столбцу,Во многих поисковых формулахПродажи соответствовать ПОИСКПОЗ(первое значение В этом примере
Пример
#N/A выбора столбца. использует это значение и ввели ихЯблоки0 5, 25 и в столбце искомое массив с нулями нашем примере яВыделите пустую зеленую ячейку, а не поЧтобы функция ПОИСКПОЗ работала
очень часто приходится |
и возвращает значение |
|
«Капуста» в массиве |
функция |
|
(#Н/Д). |
Использовать вместе с |
|
в качестве аргумента |
в формулу следующим |
|
40 |
Функция |
|
38, то формула |
выражение. Если нет, |
везде, где значения |
использую столбец), находится |
где должен быть нескольким, то нам с таблицей с использовать функцию ПОИСКПОЗ из строки 5 в |
B2:B10)) |
MATCH |
=MATCH(D5,{«Jan»,»Feb»,»Mar»},0)INDEX |
поиска и находит |
образом: |
ГрушиПОИСКПОЗ=ПОИСКПОЗ(25;A1:A3;0) то функция возвращает |
в нашей таблице |
support.office.com>
Строка поиска в Excel
«Область поиска». пространство только определенным
должны быть самостоятельными «Найти и заменить». помощь) денежном эквиваленте. возвращает наибольшее значениеМассив – массив данных лишь одну строкуЕсли команда возвращается значение. ВКапустаА
Теперь значение дляВ2.
- определяется, среди какихВ окне появляется целый диапазоном ячеек. элементами. Так, если Кроме того, вTimShaРезультат вычислений: из массива, которое в Excel (текстовые,
- этом примере значение(B7), и возвращаетна белый и «United States» составляет.Бывают случаи, когда нужно конкретно элементов производится ряд дополнительных инструментовВыделяем область ячеек, в в качестве запроса
приложении имеется возможность: Расширенный фильтр.То есть, клиент Иванов меньше либо равно числовые, логические), сравниваемый Соответственно, функция ПРОСМОТРнедоступна, необходимо загрузить возвращается из столбца значение в ячейке скройте столбцы 1,00006, а для=SEARCH($B$2,E4) произвести поиск не поиск. По умолчанию, для управления поиском. которой хотим произвести будет задано выражение - расширенного поиска данных.sboy обязан вернуть 127,2 искомому. Если бы с искомым значением. используется для поиска надстройка мастера подстановок. D C7 (С «United Kingdom» –=ПОИСК($B$2;E4) по конкретному словосочетанию, это формулы, то
- «прав», то вПростой поиск данных в: Вкладка Главная - денежных единиц. Подобным производился поиск, например, Функция ПРОСМОТР производит определенного значения в
Загрузка надстройки мастера подстановокПродажи100и 1,00009. Кроме этогоДважды кликните по маркеру а найти ячейки, есть те данные, эти инструменты находятсяНабираем на клавиатуре комбинацию выдаче будут представлены программе Excel позволяет Условное форматирование. методом производится расчет числа 10, в поиск в соответствии одной строке илиНажмите кнопку.).D мы добавили функцию автозаполнения, который находится в которых находятся которые при клике в состоянии, как клавиш все ячейки, которые найти все ячейки, - Подробнее с файлом-примером задолженности для остальных данном случае было с размерностями массива, одном столбце. Синтаксис:Microsoft Office
- .IFERROR в правом нижнем поисковые слова в по ячейке отображаются при обычном поиске,
Ctrl+F содержат данный последовательный в которых содержитсяakkord87 клиентов. бы возвращено значение то есть в=ПРОСМОТР(искомое_значение; просматриваемый_вектор; ), а затем —Для выполнения этой задачи разделах, посвященных функциямРезультат: Ваша собственная строка(ЕСЛИОШИБКА). Если ячейка углу ячейки любом порядке, даже, в строке формул. но при необходимости, после чего запуститься набор символов даже введенный в поисковое - : sboy, Извините, подготовилПример 3. В офисе 9,4, что не первой строке либоДва первых аргумента функции кнопку используется функция ГПР. ИНДЕКС и ПОИСКПОЗ. поиска в Excel. содержит ошибку, кD4 если их разделяют Это может быть
- внутри слова. Например, окно набор символов файл, а в работают 5 сотрудников является верным результатом первом столбце таблицы,
- должны быть обязательноПараметры Excel См. пример ниже.К началу страницыУрок подготовлен для Вас примеру, когда строка, чтобы быстро скопировать другие слова и слово, число или
По умолчанию, функции окно
релевантным запросу в (буквы, цифры, слова, тему вложить забыл:) различного возраста. Необходимо
(максимальное значение в
office-guru.ru>
Функции ИНДЕКС и ПОИСКПОЗ в Excel на простых примерах
Совместное использование функций ИНДЕКС и ПОИСКПОЗ в Excel – хорошая альтернатива ВПР, ГПР и ПРОСМОТР. Эта связка универсальна и обладает всеми возможностями этих функций. А в некоторых случаях, например, при двумерном поиске данных на листе, окажется просто незаменимой. В данном уроке мы последовательно разберем функции ПОИСКПОЗ и ИНДЕКС, а затем рассмотрим пример их совместного использования в Excel.
Более подробно о функциях ВПР и ПРОСМОТР.
Функция ПОИСКПОЗ в Excel
Функция ПОИСКПОЗ возвращает относительное расположение ячейки в заданном диапазоне Excel, содержимое которой соответствует искомому значению. Т.е. данная функция возвращает не само содержимое, а его местоположение в массиве данных.
Например, на рисунке ниже формула вернет число 5, поскольку имя “Дарья” находится в пятой строке диапазона A1:A9.
В следующем примере формула вернет 3, поскольку число 300 находится в третьем столбце диапазона B1:I1.
Из приведенных примеров видно, что первым аргументом функции ПОИСКПОЗ является искомое значение. Вторым аргументом выступает диапазон, который содержит искомое значение. Также функция имеет еще и третий аргумент, который задает тип сопоставления. Он может принимать один из трех вариантов:
- – функция ПОИСКПОЗ ищет первое значение в точности равное заданному. Сортировка не требуется.
- 1 или вовсе опущено – функция ПОИСКПОЗ ищет самое большое значение, которое меньше или равно заданному. Требуется сортировка в порядке возрастания.
- -1 – функция ПОИСКПОЗ ищет самое маленькое значение, которое больше или равно заданному. Требуется сортировка в порядке убывания.
В одиночку функция ПОИСКПОЗ, как правило, не представляет особой ценности, поэтому в Excel ее очень часто используют вместе с функцией ИНДЕКС.
Функция ИНДЕКС в Excel
Функция ИНДЕКС возвращает содержимое ячейки, которая находится на пересечении заданных строки и столбца. Например, на рисунке ниже формула возвращает значение из диапазона A1:C4, которое находится на пересечении 3 строки и 2 столбца.
Стоит отметить, что номера строк и столбцов задаются относительно верхней левой ячейки диапазона. Например, если ту же таблицу расположить в другом диапазоне, то формула вернет тот же результат:
Если массив содержит только одну строку или один столбец, т.е. является вектором, то второй аргумент функции ИНДЕКС указывает номер значения в этом векторе. При этом третий аргумент указывать необязательно.
Например, следующая формула возвращает пятое значение из диапазона A1:A12 (вертикальный вектор):
Данная формула возвращает третье значение из диапазона A1:L1(горизонтальный вектор):
Совместное использование ПОИСКПОЗ и ИНДЕКС в Excel
Если Вы уже работали с функциями ВПР, ГПР и ПРОСМОТР в Excel, то должны знать, что они осуществляют поиск только в одномерном массиве. Но иногда приходится сталкиваться с двумерным поиском, когда соответствия требуется искать сразу по двум параметрам. Именно в таких случаях связка ПОИСКПОЗ и ИНДЕКС в Excel оказывается просто незаменимой.
На рисунке ниже представлена таблица, которая содержит месячные объемы продаж каждого из четырех видов товара. Наша задача, указав требуемый месяц и тип товара, получить объем продаж.
Пускай ячейка C15 содержит указанный нами месяц, например, Май. А ячейка C16 – тип товара, например, Овощи. Введем в ячейку C17 следующую формулу и нажмем Enter:
=ИНДЕКС(B2:E13; ПОИСКПОЗ(C15;A2:A13;0); ПОИСКПОЗ(C16;B1:E1;0))
Как видите, мы получили верный результат. Если поменять месяц и тип товара, формула снова вернет правильный результат:
В данной формуле функция ИНДЕКС принимает все 3 аргумента:
- Первый аргумент – это диапазон B2:E13, в котором мы осуществляем поиск.
- Вторым аргументом функции ИНДЕКС является номер строки. Номер мы получаем с помощью функции ПОИСКПОЗ(C15;A2:A13;0). Для наглядности вычислим, что же возвращает нам данная формула:
- Третьим аргументом функции ИНДЕКС является номер столбца. Этот номер мы получаем с помощью функции ПОИСКПОЗ(C16;B1:E1;0). Для наглядности вычислим и это значение:
Если подставить в исходную громоздкую формулу вместо функций ПОИСКПОЗ уже вычисленные данные из ячеек D15 и D16, то формула преобразится в более компактный и понятный вид:
=ИНДЕКС(B2:E13;D15;D16)
Как видите, все достаточно просто!
На этой прекрасной ноте мы закончим. В этом уроке Вы познакомились еще с двумя полезными функциями Microsoft Excel – ПОИСКПОЗ и ИНДЕКС, разобрали возможности на простых примерах, а также посмотрели их совместное использование. Надеюсь, что данный урок Вам пригодился. Оставайтесь с нами и успехов в изучении Excel.
Особенности использования функции ПОИСКПОЗ в Excel
Функция имеет следующую синтаксическую запись:
=ПОИСКПОЗ( искомое_значение;просматриваемый_массив; )
- искомое_значение – обязательный аргумент, принимающий текстовые, числовые значения, а также данные логического и ссылочного типов, который используется в качестве критерия поиска (для сопоставления величин или нахождения точного совпадения);
- просматриваемый_массив – обязательный аргумент, принимающий данные ссылочного типа (ссылки на диапазон ячеек) или константу массива, в которых выполняется поиск позиции элемента согласно критерию, заданному первым аргументом функции;
- – необязательный для заполнения аргумент в виде числового значения, определяющего способ поиска в диапазоне ячеек или массиве. Может принимать следующие значения:
- -1 – поиск наименьшего ближайшего значения заданному аргументом искомое_значение в упорядоченном по убыванию массиве или диапазоне ячеек.
- 0 – (по умолчанию) поиск первого значения в массиве или диапазоне ячеек (не обязательно упорядоченном), которое полностью совпадает со значением, переданным в качестве первого аргумента.
- 1 – Поиск наибольшего ближайшего значения заданному первым аргументом в упорядоченном по возрастанию массиве или диапазоне ячеек.
- Если в качестве аргумента искомое_значение была передана текстовая строка, функция ПОИСКПОЗ вернет позицию элемента в массиве (если такой существует) без учета регистра символов. Например, строки «МоСкВа» и «москва» являются равнозначными. Для различения регистров можно дополнительно использовать функцию СОВПАД.
- Если поиск с использованием рассматриваемой функции не дал результатов, будет возвращен код ошибки #Н/Д.
- Если аргумент явно не указан или принимает число 0, для поиска частичного совпадения текстовых значений могут быть использованы подстановочные знаки («?» — замена одного любого символа, «*» — замена любого количества символов).
- Если в объекте данных, переданном в качестве аргумента просматриваемый_массив, содержится два и больше элементов, соответствующих искомому значению, будет возвращена позиция первого вхождения такого элемента.