Порада.
Спробуйте скористатися новою функцією 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, ..., А–Я, 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 |