Порада.
Спробуйте скористатися новою функцією XMATCH – покращеною версією ФУНКЦІЇ MATCH, яка працює в будь-якому напрямку та за замовчуванням повертає точні збіги, що спрощується та зручніше використовувати, ніж попередник.
Функція MATCH шукає вказаний елемент у діапазоні клітинок, а потім повертає відносне положення цього елемента в діапазоні. Наприклад, якщо діапазон A1:A3 містить значення 5, 25 і 38, формула =MATCH(25;A1:A3;0) повертає число 2, оскільки 25 – другий елемент у діапазоні.
Порада.
Використовуйте функцію MATCH замість однієї з функцій LOOKUP, якщо потрібно отримати позицію елемента в діапазоні замість самого елемента. Наприклад, за допомогою функції MATCH можна вказати значення аргументу row_num функції INDEX .
Синтаксис
MATCH(шукане_значення;масив_перегляду;[тип_зіставлення])
Синтаксис функції MATCH має такі аргументи:
lookup_value Необхідні. Значення, яке потрібно зіставити в lookup_array. Наприклад, під час пошуку номера телефону в телефонній книзі, як значення пошуку використовується ім’я особи, але номер телефону – це значення, яке потрібно знайти.
Аргумент lookup_value може бути значенням (числом, текстом або логічним значенням) або посиланням на число, текст або логічне значення.
lookup_array Необхідні. Діапазон клітинок, в якому шукають значення.
match_type Необов'язково. Число -1, 0 або 1. Аргумент match_type визначає, як Excel зіставлює lookup_value зі значеннями в lookup_array. Значення за промовчанням для цього аргументу – 1.
У наведеній нижче таблиці описано, як функція знаходить значення на основі настройки аргументу тип_зіставлення.
| Тип_зіставлення | Поведінка |
|---|---|
| 1 або не вказано | Функція MATCH знаходить найбільше значення, менше або рівне lookup_value. Значення в аргументі lookup_array мають бути розміщені за зростанням, наприклад: ...-2, -1, 0, 1, 2, ..., A-Z, FALSE, TRUE. |
| 0 | Функція MATCH знаходить перше значення, яке точно дорівнює lookup_value. Значення в аргументі lookup_array можуть бути в будь-якому порядку. |
| –1 | Функція MATCH знаходить найменше значення, яке більше або дорівнюєlookup_value. Значення в аргументі lookup_array мають розташовуватися за спаданням, наприклад: TRUE, FALSE, Z-A, ... 2, 1, 0, -1, -2, ...тощо. |
- Функція MATCH повертає позицію відповідного значення в межах lookup_array, а не самого значення. Наприклад, MATCH("b",{"a","b","c"};0) повертає 2, що є відносним положенням "b" у масиві {"a","b","c"}.
- Функція MATCH не розрізняє букви у верхньому й нижньому регістрі під час зіставлення текстових значень.
- Якщо функція MATCH не знаходить відповідного значення, повертається значення помилки #N/A.
- Якщо match_type дорівнює 0, а lookup_value текстовий рядок, в аргументі lookup_value можна використовувати символи узагальнення : знак питання (?) і зірочку (*). Знак питання відповідає будь-якому окремому символу, а зірочка – будь-якій послідовності символів. Якщо потрібно знайти фактичний знак питання або зірочку, перед символом введіть тильду (~).
Приклад
Скопіюйте дані прикладу з наведеної нижче таблиці та вставте їх у клітинку A1 нового аркуша Excel. Щоб відобразити результат обчислення формул, виберіть їх, натисніть клавішу F2, а потім – клавішу Enter. За потреби можна змінити ширину стовпців, щоб відобразити всі дані.
| Продукт | Кількість випадків | |
|---|---|---|
| Банани | 25 | |
| Апельсини | 38 | |
| Яблука | 40 | |
| Груші | 41 | |
| Формула | Опис | Результат |
| =MATCH(39;B2:B5;1) | Оскільки точної відповідності немає, повертається позиція наступного найменшого елемента (38) діапазону B2:B5. | 2 |
| =MATCH(41;B2:B5;0) | Позиція значення 41 в діапазоні B2:B5. | 4 |
| =MATCH(40;B2:B5;-1) | Повертає помилку, оскільки значення діапазону B2:B5 розташовано не за спаданням. | #N/A |