Функция ПОИСКПОЗX выполняет поиск указанного элемента в массиве или диапазоне ячеек и возвращает относительную позицию элемента.
Предположим, что у нас есть список продуктов в ячейках C3–C7 и мы хотим определить, где в списке находится произведение из ячейки E3. Мы воспользуемся функцией ПОИСКПОЗX для определения позиции элемента в списке.
Синтаксис
Функция ПОИСКПОЗX возвращает относительную позицию элемента в массиве или диапазоне ячеек.
=ПОИСКПОЗX(искомое_значение; просматриваемый_массив; [режим_сопоставления]; [режим_поиска])
| Аргумент | Описание |
|---|---|
|
Искомое_значение. Обязательно |
Искомое значение |
|
Просматриваемый_массив Обязательно |
Массив или диапазон для поиска |
|
[режим_сопоставления] Необязательно |
Укажите тип сопоставления: 0 — точное совпадение (по умолчанию) -1 — точное совпадение или следующий наименьший элемент 1 — точное совпадение или следующий наибольший элемент 2 — совпадение с использованием особого значения подстановочных знаков: *, ?, ~. |
|
[режим_поиска] Необязательно |
Укажите тип поиска: 1 — поиск от первого до последнего (по умолчанию) -1 — поиск от последнего к первому (обратный поиск). 2 — выполнение двоичного поиска на основе сортировки просматриваемого_массива по возрастанию. Если сортировка не выполнена, будут возвращены недопустимые результаты. -2 — выполнение двоичного поиска на основе сортировки просматриваемого_массива по убыванию. Если сортировка не выполнена, будут возвращены недопустимые результаты. |
Примеры
Пример 1
Точная позиция первой фразы, которая в точности соответствует или наиболее близко подходит к значению "Gra", определена в следующем примере.
Формула: ПОИСКПОЗX(E3;C3:C7;1)
Пример 2
Количество продавцов, имеющих право на получение премии, определяется в следующем примере. Чтобы найти ближайший элемент в списке или точное совпадение, для match_mode также используется значение 1; Однако поскольку данные являются числовыми, они возвращают количество значений. Поскольку в этом случае было четыре торговых представителя, которые превысили сумму бонуса, функция возвращает 4.
Формула=ПОИСКПОЗX(F2;C3:C9;1)
Пример 3
Далее выполняется одновременный поиск по вертикали и по горизонтали с использованием сочетания ИНДЕКС/ПОИСКПОЗX/ПОИСКПОЗX. В этом случае мы хотели бы получить возврат общей суммы продаж для определенного торгового представителя и месяца. Это сравнимо с сочетанием методов ИНДЕКС и ПОИСКПОЗ , но требует меньше аргументов.
Formula=INDEX(C6:E12,XMATCH(B3,B6:B12),XMATCH(C3,C5:E5))
Пример 4
Кроме того, функцию ПОИСКПОЗX можно использовать для возврата значения в массиве. Например, =ПОИСКПОЗX(4,{5,4,3,2,1}) даст 2, так как 4 — это вторая запись массива. В то время как =ПОИСКПОЗX(4,5,{5,4,3,2,1};1) дает 1 в этом конкретном случае совпадения, аргумент match_mode (1) настроен на возврат либо точного совпадения, либо следующего наибольшего элемента, которым является 5.
Дополнительные сведения
Вы всегда можете задать вопрос эксперту в Excel Tech Community или получить поддержку в сообществах.