Зміст
Сьогодні я зроблю порівняльний аналіз XLOOKUP проти Функції INDEX-MATCH в Excel У попередніх версіях Excel ми використовували ОГЛЯД "Про те, що в Україні не існує жодного закону, який би ПЕРЕГЛЯД , а також "Про захист прав людини і основоположних свобод INDEX-MATCH функції для пошуку певного значення в діапазоні комірок. Однак з появою Office 365 Excel надав нам нову динамічну функцію під назвою XLOOKUP У цій статті я спробую порівняти широко використовувані функції, які дозволяють провести аналогічну операцію більш складно. XLOOKUP та INDEX-MATCH .
Завантажити Практичний посібник
Отримайте цей зразок файлу для кращого розуміння.
XLOOKUP vs INDEX-MATCH Functions.xlsxВступ до функції XLOOKUP
На сьогоднішній день, на жаль, це не так. XLOOKUP використовується для пошуку певного значення в діапазоні комірок або масиву, після чого повертає відповідний перший збіг. Вона також показує найближчий або приблизний збіг, якщо точного збігу немає.
Синтаксис:
=XLOOKUP(значення_пошуку,масив_пошуку,масив_повернення,[якщо_не_знайдено],[режим_відповідності],[режим_пошуку])
Аргументи:
- Lookup_value Це значення, яке ми шукаємо в конкретному стовпчику діапазону.
- Lookup_array : Це масив, в якому ми шукаємо lookup_value Може бути як рядком, так і стовпчиком.
- Return_array: Це стовпчик, з якого виводиться відповідне значення lookup_value буде повернуто.
Факультативні аргументи:
- Якщо_не_знайдено : Це значення, яке буде повернуто у випадку, якщо lookup_array не має значення lookup_value.
- Match_mode : Це число, що позначає тип збігу в lookup_value Це необов'язковий аргумент, який може містити чотири значення.
- Коли це буде 0 , XLOOKUP буде шукати точний збіг (за замовчуванням).
- Коли це буде 1 , XLOOKUP Якщо точний збіг не буде знайдено, то буде знайдено наступне менше значення.
- Коли це буде -1 , XLOOKUP Якщо точний збіг не знайдено, то буде використано наступне за величиною значення.
- Коли це буде 2 , XLOOKUP спочатку знайде приблизний збіг, використовуючи символи підстановки (Застосовується тільки для рядкових значень пошуку).
- Режим_пошуку Число, що позначає тип пошукової операції, яка виконується над масивом lookup_array. Також є необов'язковим і може мати чотири значення:
- Якщо це 1 , XLOOKUP буде здійснювати пошук зверху вниз в lookup_array (За замовчуванням).
- Коли це буде -1 , XLOOKUP буде здійснювати пошук знизу вгору в
- Якщо це 2 , XLOOKUP буде проводити бінарний пошук в порядку зростання.
- Коли це буде -2 , XLOOKUP буде проводити бінарний пошук в порядку спадання.
Вступ до функцій INDEX-MATCH
Поєднання INDEX-MATCH використовується для отримання значення з заданого місця і зіставлення його з діапазоном джерела.
Синтаксис:
=INDEX(масив,СПІВПАДАННЯ(значення_пошуку,масив_пошуку,тип_співпадіння),відсутність_стовпчика)
Аргументи:
Для функції INDEX:
- Масив Це діапазон комірок, з яких ми хочемо витягти значення.
- MATCH(значення_пошуку, масив_пошуку, тип_відповідності): Це номер рядка діапазону, в якому знаходиться lookup_value відповідає певному значенню в lookup_array .
- Без_колон: Це номер стовпця масиву, з якого ми хочемо повернути значення, що відповідає lookup_value .
Для функції MATCH:
- Lookup_value: Це та цінність, яку ми шукаємо.
- Lookup_array: Це масив, в якому ми шукаємо lookup_value Це може бути як рядок, так і стовпчик.
- Match_type: Це ціле число, що позначає тип збігу, який ми шукаємо. Це необов'язково.
- Коли це буде -1 , МАТЧ спочатку шукає точний збіг. Якщо точний збіг не знайдено, то шукає наступне більше значення (за замовчуванням) (на противагу XLOOKUP ).
Але умовою є те, що lookup_array повинні бути відсортовані за зростанням, інакше буде видана помилка.
- Коли це буде 1 , МАТЧ Якщо точного збігу не знайдено, то шукатиметься наступне менше значення (навпроти XLOOKUP ).
Але умовою є те, що lookup_array повинні бути відсортовані за спаданням, інакше буде видана помилка.
- Коли це буде 0 , МАТЧ буде шукати точний збіг.
Читати далі: Як виділити певні дані в Excel (6 способів)
7 Порівняння використання функцій XLOOKUP та INDEX-MATCH
Тепер, коли ми розібрали формулу, давайте обговоримо деякі подібності та відмінності між двома функціями. Перш ніж перейти до основних дискусій, я показую основні моменти в таблиці для вашої зручності.
Питання для обговорення | Схожість/Різниця | Пояснення |
Масив_пошуку_стовпців | Подібність | Обидва підтримують стовпець в якості масиву пошуку. |
Масив_пошуку_рядків | Подібність | Обидва підтримують рядок в якості lookup_array. |
Немає збігу lookup_value | Несхожість | XLOOKUP за замовчуванням має опцію налаштування на відсутність збігу lookup_value. А ось INDEX-MATCH не має. |
Орієнтовний збіг | Часткова схожість | XLOOKUP може знайти наступне менше або наступне більше значення, якщо немає точного збігу. INDEX-MATCH також може це зробити, але масив lookup_array повинен бути відсортований за зростанням або спаданням. |
Відповідні підстановочні знаки | Подібність | Обидва підтримують відповідні підказки. |
Співставлення декількох значень | Часткова схожість | XLOOKUP може знайти або перше, або останнє значення при збігу декількох значень. Але INDEX-MATCH може повернути тільки перше значення, яке збігається. |
Формула масиву | Подібність | Обидва підтримують формулу масиву. |
1. XLOOKUP та INDEX-MATCH для пошуку значення в стовпці
У цьому аспекті існує схожість між двома функціями. XLOOKUP та INDEX-MATCH масив lookup_array може бути стовпчиком для обох функцій. Тут ми шукаємо точне значення Оцінки з фізики ПІБ студента в C ell F5 , Дженніфер Марло Ми хотіли пошукати зверху донизу в Ім'я студента стовпчик і повернути " Не знайдено " у разі, якщо збігів не знайдено.
- За XLOOKUP , застосовують формулу, наведену в Комірка G5 .
=XLOOKUP(F5,C5:C16,D5:D16,"Not Found",0,1)
- За INDEX-MATCH використовуйте цю формулу в Комірка G5 .
=INDEX(B5:D16,MATCH(F5,C5:C16,0),3)
Читати далі: Як зіставити декілька критеріїв з різних масивів в Excel
2. XLOOKUP та INDEX-MATCH для пошуку значення в рядку
У цьому аспекті між двома функціями також існує схожість. XLOOKUP та INDEX-MATCH "Про те, що в Україні не існує жодного закону, який би lookup_array також може бути рядком для обох функцій. Для ілюстрації ми маємо новий набір даних з Посвідчення особи , Імена і Оцінки з фізики і Оцінки .
Давайте на мить замислимося над тим, що це дуже широкий масив даних, і ми не знаємо, яка кількість Клас Тоді, щоб дізнатися оцінку конкретного студента, ми повинні використати стовпчик Рядок заголовка (B4:E4) в якості масиву lookup_array і слово " Клас "як це було у випадку з lookup_value Ми можемо досягти цього, використовуючи як XLOOKUP та INDEX-MATCH .
- Для того, щоб дізнатися оцінку 3-й студент "Про те, що в Україні не існує жодного закону, який би XLOOKUP формула буде виглядати наступним чином Комірка G5 .
=XLOOKUP("Клас",B4:E4,B7:E7, "Не знайдено",0,1)
- У цьому випадку, в якості прикладу, можна навести INDEX-MATCH формула буде такою:
=INDEX(B5:E16,3,MATCH("Клас",B4:E4,0))
3. XLOOKUP та INDEX-MATCH, коли збігів не знайдено
Якщо значення lookup_value не збігається з будь-яким значенням у полі lookup_value, то в цьому аспекті ці дві функції відрізняються. lookup_array можна задати фіксоване значення, яке буде повертатися в XLOOKUP Для цього необхідно задати це значення в полі if_not_found З іншого боку, така можливість відсутня в INDEX-MATCH Він поверне помилку. Ви повинні використовувати функція IFERROR У заданому наборі даних знайдемо значення ПІБ студента з ідентифікаційним номером 100 .
- Для цього скористайтеся наступним XLOOKUP формула в Комірка G5 .
=XLOOKUP(100,B5:B16,C5:C16,"Not Found",0,1)
- З іншого боку, застосувати це INDEX-MATCH формула.
=INDEX(B5:E16,MATCH(100,B5:B16,0),2)
- Оскільки він повертає помилку, ви повинні використовувати ПОМИЛКА функцію ззовні, щоб впоратися з цією помилкою.
=IFERROR(INDEX(B5:E16,MATCH(100,B5:B16,0),2), "Не знайдено")
Схожі читання
- Співставлення індексів Excel для повернення декількох значень в одній комірці
- Формула INDEX-MATCH в Excel для повернення декількох значень по горизонталі
- Як використовувати формулу ІНДЕКС-ПОДІБНІСТЬ в Excel для отримання декількох результатів
- [Виправлено!] Співставлення індексів не повертає коректне значення в Excel (5 причин)
- Як використовувати ІНДЕКСНИЙ СПІВПАДАННЯ замість ВПЛИВУ в Excel (3 способи)
4. XLOOKUP та INDEX-MATCH у випадку приблизних збігів
У цьому аспекті існує часткова схожість між двома функціями. XLOOKUP функцію, якщо функція lookup_value не збігається з жодним значенням у lookup_array можна змінити формулу, щоб вона повертала наступне менше або наступне більше значення. Задайте аргумент match_type до -1 якщо ви хочете отримати наступне менше значення і встановіть його на 1 якщо ви хочете отримати наступне більше значення.
Наприклад, ми дізнаємося, що студент з оцінкою 50 або наступний більший знак.
- Щоб знайти значення, застосуйте цю формулу XLOOKUP формула.
=XLOOKUP(50,D5:D16,C5:C16,"Not Found",1,1)
- Як бачимо, немає жодного студента з оцінкою 50 Саме тому він показує ту, що одразу після того, як 50 , 51 по Дезмонд Хейс .
Така ж опція є і в INDEX-MATCH Але недоліком є те, що для отримання наступного більшого значення потрібно сортувати масив lookup_array за спаданням, інакше він поверне помилку. А для отримання наступного меншого значення потрібно сортувати за зростанням.
- Перш за все, вставте цю формулу в Комірка G5 .
=INDEX(B5:E16,MATCH(50,D5:D16,-1),2)
- В результаті ви побачите, що результат показує #N/A помилка.
- Тому, сортуйте Діапазон комірок D5:D16 в порядку зростання і ви отримаєте правильне значення.
Читати далі: Як використовувати INDEX та Match для часткового збігу (2 способи)
5. XLOOKUP та INDEX-MATCH у разі збігу підстановочних знаків
У цьому аспекті існує схожість між двома функціями. XLOOKUP та INDEX-MATCH обидва підтримують Підстановочні знаки Тут ми дізнаємося будь-якого студента з " Марло. " як друге ім'я. Давайте виконаємо наступні кроки, щоб побачити XLOOKUP проти INDEX-MATCH порівняння.
- По-перше, застосувати це XLOOKUP формула в Комірка G5 щоб отримати результат.
=XLOOKUP("*Marlo*",C5:C16,C5:C16,"Not Found",2,1)
Зауважте: Для використання підстановочних знаків в XLOOKUP ви повинні встановити значення match_type аргумент для 2 Інакше це не спрацює. - З іншого боку, угода про асоціацію між Україною та ЄС INDEX-MATCH формула для виконання цього ж завдання буде такою.
=INDEX(B5:E16,MATCH("*Marlo*",C5:C16,0),2)
Читати далі: Співставлення декількох критеріїв за допомогою підстановочного знаку в Excel (повне керівництво)
6. XLOOKUP та INDEX-MATCH, коли декілька значень відповідають значенню пошуку
На цьому прикладі показано XLOOKUP проти INDEX-MATCH коли декілька значень збігаються з шуканим значенням. У цьому відношенні також існує часткова схожість між двома функціями. XLOOKUP та INDEX-MATCH обидва повертають тільки одне значення, якщо декілька значень в lookup_array збігаються з lookup_value Але в XLOOKUP ви можете змінити пошук, щоб отримати або перший, або останній збіг. Щоб отримати перше значення, що збігається, встановіть параметр тип_пошуку аргумент для 1 А щоб отримати останнє значення, яке збігається, встановіть тип_пошуку аргумент для -1 Але в INDEX-MATCH у вас немає вибору, ви отримаєте тільки перше значення, яке збігається.
- Отримати перший студент, який отримав 100 Ви можете скористатися цим XLOOKUP формула в Комірка G5 .
=XLOOKUP(100,D5:D16,C5:C16,"Not Found",0,1)
- Разом з ним ви отримаєте останнього учня з 100 за допомогою цього XLOOKUP формула.
=XLOOKUP(100,D5:D16,C5:C16,"Not Found",0,-1)
- Навпаки, ви отримаєте тільки перше значення, яке збігається з цим INDEX-MATCH формула.
=INDEX(B5:E16,MATCH(100,D5:D16,0),2)
7. XLOOKUP та INDEX-MATCH у випадку декількох значень пошуку
На цьому прикладі ми продемонструємо XLOOKUP проти INDEX-MATCH У цьому відношенні існує схожість між цими двома функціями. Обидві дозволяють множину значень для пошуку. lookup_values (Формула масиву).
- Для XLOOKUP буде працювати наступна формула.
=XLOOKUP(G5:G8,B5:B16,E5:E16,"Not Found",0,1)
- Потім, за INDEX-MATCH також буде працювати наступна функція.
=INDEX(B5:E16,MATCH(G5:G8,B5:B16,0),4)
Переваги та недоліки функції XLOOKUP
Існують певні переваги та недоліки використання XLOOKUP Розглянемо їх коротко.
Переваги
- Встановити значення за замовчуванням для випадків, коли немає збігів.
- Може шукати приблизні збіги без сортування lookup_array .
- Мати доступ до пошуку як з першої, так і з останньої комірки lookup_array .
Недоліки
- Працює повільніше, ніж INDEX-MATCH функцію.
- Доступно в Office 365 тільки.
Переваги та недоліки функцій INDEX-MATCH
На сьогоднішній день, на жаль, це не так. INDEX-MATCH функції також отримали деякі з наступних плюсів і мінусів.
Переваги
- Працює швидше, ніж XLOOKUP функцію.
- Доступно в старому Excel версії.
Недоліки
- Не може обробляти помилки, коли збігів не знайдено.
- Потребує lookup_array для сортування на приблизні збіги.
- Повертає тільки перше значення, якщо декілька значень відповідають умові lookup_value .
Висновок
Нарешті, ми підійшли до завершення нашої великої статті, в якій ми спробували зробити порівняльний аналіз XLOOKUP проти INDEX-MATCH Повідомте нам про ваші слушні пропозиції з цього приводу. Слідкуйте за ExcelWIKI для отримання додаткової інформації.