Одним з найбільш затребуваних операторів серед користувачів Excel є функція ПОИСКПОЗ. В її завдання входить визначення номера позиції елемента в заданому масиві даних. Найбільшу користь вона приносить, коли застосовується в комплексі з іншими операторами. Давайте розберемося, що ж собою представляє функція ПОИСКПОЗ, і як її можна використовувати на практиці.
зміст
Оператор ПОИСКПОЗ належить до категорії функцій «Посилання та масиви». Він здійснює пошук заданого елемента в зазначеному масиві і видає в окрему клітинку номер його позиції в цьому діапазоні. Власне на це вказує навіть його назву. Також ця функція при застосуванні в комплексі з іншими операторами повідомляє їм номер позиції конкретного елемента для подальшої обробки цих даних.
Синтаксис оператора ПОИСКПОЗ виглядає так:
=ПОИСКПОЗ(искомое_значение;просматриваемый_массив;[тип_сопоставления])
Тепер розглянемо кожен з трьох цих аргументів окремо.
«Шукане значення» - це той елемент, який слід відшукати. Він може мати текстову, числову форму, а також приймати логічне значення. Як цього аргументу може виступати також посилання на осередок, яка містить будь-який з перерахованих вище значень.
«Проглядається масив» - це адреса діапазону, в якому розташоване шукане значення. Саме позицію даного елемента в цьому масиві і повинен визначити оператор ПОИСКПОЗ.
«Тип зіставлення» вказує точний збіг потрібно шукати або неточне. Цей аргумент може мати три значення: «1», «0» і «-1». При значенні «0» оператор шукає тільки точний збіг. Якщо вказано значення «1», то в разі відсутності точного збігу ПОИСКПОЗ видає найближчий до нього елемент по спадаючій. Якщо вказано значення «-1», то в разі, якщо не виявлено точний збіг, функція видає найближчий до нього елемент по зростанню. Важливо, якщо ведеться запитом не знайдено точного значення, а приблизного, щоб проглядається масив був упорядкований по зростанню (тип зіставлення «1») або зменшенням (тип зіставлення «-1»).
Аргумент «Тип зіставлення» не є обов'язковим. Він може бути пропущеним, якщо в ньому немає потреби. В цьому випадку його значення за замовчуванням дорівнює «1». Застосовувати аргумент «Тип зіставлення», перш за все, має сенс тільки тоді, коли обробляються числові значення, а не текстові.
У разі, якщо ПОИСКПОЗ при заданих налаштуваннях не може знайти потрібний елемент, то оператор показує в осередку помилку «# Н / Д».
При проведенні пошуку оператор не розрізняє регістри символів. Якщо в масиві присутні кілька точних збігів, то ПОИСКПОЗ виводить в осередок позицію самого першого з них.
Давайте розглянемо на прикладі найпростіший випадок, коли за допомогою ПОИСКПОЗ можна визначити місце зазначеного елемента в масиві текстових даних. Дізнаємося, яку позицію в діапазоні, в якому знаходяться найменування товарів, займає слово «Цукор».
Так як нам потрібно знайти позицію слова «Цукор» в діапазоні, то вбиваємо це найменування в поле «Шукане значення».
В поле «проглядається масив» потрібно вказати координати самого діапазону. Його можна вбити вручну, але простіше встановити курсор в поле і виділити цей масив на аркуші, затискаючи при цьому ліву кнопку миші. Після цього його адресу відобразиться у вікні аргументів.
У третьому полі «Тип зіставлення» ставимо число «0», так як будемо працювати з текстовими даними, і тому нам потрібен точний результат.
Після того, як всі дані встановлені, тиснемо на кнопку «OK».
урок: Майстер функцій в Ексель
Вище ми розглянули найпримітивніший випадок застосування оператора ПОИСКПОЗ, але навіть його можна автоматизувати.
Тепер давайте розглянемо, як можна використовувати ПОИСКПОЗ для роботи з числовими виразами.
Ставиться завдання знайти товар на суму реалізації 400 рублів або самий найближчий до цієї суми по зростанню.
В поле «Шукане значення» вбиваємо число «400». В поле «проглядається масив» вказуємо координати стовпчика «Сума». В поле «Тип зіставлення» встановлюємо значення «-1», так як ми виробляємо пошук рівного або більшого значення від шуканого. Після виконання всіх налаштувань тиснемо на кнопку «OK».
Аналогічним чином можна провести пошук і навколо позиції до «400» по спадаючій. Тільки для цього потрібно зробити фільтрацію даних по зростанню, а в полі «Тип зіставлення» аргументів функції встановити значення «1».
урок: Сортування і фільтрація даних в Excel
Найефективніше цю функцію використовувати з іншими операторами в складі комплексної формули. Найбільш часто її застосовують в зв'язці з функцією ІНДЕКС. Даний аргумент виводить в зазначену осередок вміст діапазону заданий по номеру його рядки або стовпці. Причому нумерація, як і щодо оператора ПОИСКПОЗ, виконується не відносно всього листа, а тільки всередині діапазону. Синтаксис цієї функції наступний:
=ИНДЕКС(массив;номер_строки;номер_столбца)
При цьому, якщо масив одновимірний, то можна використовувати тільки один з двох аргументів: «Номер рядка» або «Номер стовпця».
Особливість зв'язки функцій ІНДЕКС та ПОИСКПОЗ полягає в тому, що остання може використовуватися як аргумент першої, тобто, вказувати на позицію рядка або стовпця.
Давайте поглянемо, як це можна зробити на практиці, використовуючи всю ту ж таблицю. У нас стоїть завдання вивести в додаткове поле листа «Товар» найменування товару, загальна сума виручки від якого дорівнює 350 рублям або найближчого до цього значення по спадаючій. Даний аргумент вказано в полі «Приблизна сума виручки на аркуші».
В поле «Номер рядка» буде розташовуватися вкладена функція ПОИСКПОЗ. Її доведеться вбити вручну, використовуючи синтаксис, про який йдеться в самому початку статті. Відразу записуємо назву функції - «ПОИСКПОЗ» без лапок. Потім відкриваємо дужку. Першим аргументом даного оператора є «Шукане значення». Воно розташовується на аркуші в поле «Приблизна сума виручки». Вказуємо координати комірки, що містить число 350. Ставимо крапку з комою. Другим аргументом є «проглядається масив». ПОИСКПОЗ буде переглядати той діапазон, в якому знаходиться сума виручки і шукати найбільш наближену до 350 рублям. Тому в даному випадку вказуємо координати стовпчика «Сума виручки». Знову ставимо крапку з комою. Третім аргументом є «Тип зіставлення». Так як ми будемо шукати число рівне заданому або найближче менше, то встановлюємо тут цифру «1». Закриваємо дужки.
Третій аргумент функції ІНДЕКС «Номер стовпця» залишаємо порожнім. Після цього тиснемо на кнопку «OK».
Як бачимо, оператор ПОИСКПОЗ є дуже зручною функцією для визначення порядкового номера зазначеного елемента в масиві даних. Але користь від нього значно збільшується, якщо він застосовується в комплексних формулах.