Содржина
Овој туторијал објаснува како да се користи функцијата MATCH во Excel со примери на формула. Исто така, покажува како да ги подобрите вашите формули за пребарување со правење динамична формула со VLOOKUP и MATCH.
Во Microsoft Excel, постојат многу различни функции за пребарување/референца кои можат да ви помогнат да најдете одредена вредност во опсег на ќелии, а MATCH е еден од нив. Во основа, тој идентификува релативна позиција на ставка во опсег на ќелии. Сепак, функцијата MATCH може да направи многу повеќе од нејзината чиста суштина.
Excel MATCH функција - синтакса и користи
Функцијата MATCH во Excel бара одредена вредност во опсег на ќелии, и ја враќа релативната позиција на таа вредност.
Синтаксата за функцијата MATCH е следна:
MATCH(барачка_вредност, низа_преглед, [тип_совпаѓање])Вредност_пребарување (задолжително) - вредноста што сакате да ја најдете. Може да биде нумеричка, текстуална или логичка вредност, како и референца на ќелија.
Lookup_array (задолжително) - опсегот на ќелии во кои треба да се пребарува.
Тип_совпаѓање (опционално) - го дефинира типот на совпаѓање. Може да биде една од овие вредности: 1, 0, -1. Аргументот match_type поставен на 0 го враќа само точното совпаѓање, додека другите два типа дозволуваат приближно совпаѓање.
- 1 или испуштен (стандардно) - најдете ја најголемата вредност во низа за пребарување што е помала или еднаква на вредноста за пребарување. Бара сортирање на низата за пребарување во растечки редослед,работна книга за преземање
Примери на формулата на Excel MATCH (датотека .xlsx)
од најмала до најголема или од А до Ш. - 0 - најдете ја првата вредност во низата што е точно еднаква на вредноста за пребарување. Не е потребно подредување.
- -1 - најдете ја најмалата вредност во низата што е поголема или еднаква на вредноста за пребарување. Низата за пребарување треба да биде подредена по опаѓачки редослед, од најголем до најмал или од Ш до А.
За подобро разбирање на функцијата MATCH, да направиме едноставна формула врз основа на овие податоци: имињата на учениците во колоната А и нивните резултати од испитите во колоната Б, подредени од најголем до најмал. За да дознаете каде стои одреден студент (да речеме, Лаура ) меѓу другите, користете ја оваа едноставна формула:
=MATCH("Laura", A2:A8, 0)
Изборно, можете да ја ставите вредноста за пребарување во некои ќелија (Е1 во овој пример) и упатете ја таа ќелија во формулата на Excel Match:
=MATCH(E1, A2:A8, 0)
Како што гледате на сликата од екранот погоре, имињата на учениците се внесуваат по произволен редослед и затоа го поставивме аргументот тип_совпаѓање на 0 (точно совпаѓање), бидејќи само овој тип на совпаѓање не бара сортирање вредности во низата за пребарување. Технички, формулата Match ја враќа релативната позиција на Лаура во опсегот. Но, бидејќи оценките се подредени од најголеми до најмали, тоа ни кажува и дека Лаура го има петтиот најдобар резултат меѓу сите ученици.
Совет. Во Excel 365 и Excel 2021, можете да ја користите функцијата XMATCH, која е модерен и помоќен наследникна MATCH.
4 работи што треба да ги знаете за функцијата MATCH
Како што штотуку видовте, користењето на MATCH во Excel е лесно. Сепак, како што е случајот со речиси секоја друга функција, има неколку специфичности за кои треба да знаете:
- Функцијата MATCH ја враќа релативната позиција на вредноста за пребарување во низата, а не самата вредност.
- MATCH е неосетлив на букви , што значи дека не прави разлика помеѓу мали и големи букви кога се работи со вредности на текст.
- Ако низата за пребарување содржи неколку појавувања на вредноста за пребарување, се враќа позицијата на првата вредност.
- Ако вредноста за пребарување не се најде во низата за пребарување, се враќа грешката #N/A.
Како да се користи MATCH во Excel - примери на формула
Сега кога ги знаете основните употреби на функцијата Excel MATCH, ајде да разговараме за уште неколку примери на формула што ги надминуваат основите.
Делумно совпаѓање со џокери
Како и многу други функции, MATCH ги разбира следните знаци:
- Прашалник (?) - го заменува секој поединечен знак
- Ѕвездичка (*) - го заменува секое s низа на знаци
Забелешка. Човечките картички може да се користат само во формули на Match со match_type поставено на 0.
Формулата за совпаѓање со џокери е корисна во ситуации кога сакате да се совпадне не со целата текстуална низа, туку само со некои знаци или некој дел на низата.За да ја илустрирате поентата, разгледајте го следниов пример.
Да претпоставиме дека имате список на регионални препродавачи и нивните продажни бројки за изминатиот месец. Сакате да најдете релативна позиција на одреден препродавач во списокот (подредени според износите на продажба по опаѓачки редослед), но не можете точно да се сетите на неговото име, иако се сеќавате на неколку први знаци.
Претпоставувајќи дека препродавачот имињата се во опсегот A2:A11, а вие го барате името што започнува со „автомобил“, формулата оди на следниов начин:
=MATCH("car*", A2:A11,0)
За да ја направиме нашата формула Match повеќе разновидна, можете да ја напишете вредноста за пребарување во некоја ќелија (E1 во овој пример) и да ја споите таа ќелија со знакот на џокер, вака:
=MATCH(E1&"*", A2:A11,0)
Како што е прикажано на екранот подолу, формулата враќа 2, што е позицијата на "Carter":
За да замените само еден знак во вредноста за пребарување, користете го "?" оператор со џокер, вака:
=MATCH("ba?er", A2:A11,0)
Горената формула ќе одговара на името „ Baker “ и повторно ќе ја изврши нејзината релативна позиција, која е 5.
Формула MATCH чувствителна на букви
Како што беше споменато во почетокот на ова упатство, функцијата MATCH не разликува големи и мали знаци. За да направите формула за совпаѓање чувствителна на големи букви, користете MATCH во комбинација со функцијата EXACT што точно ги споредува ќелиите, вклучувајќи го и буквите на знаците.
Еве ја генеричката формула чувствителна на големи букви што треба да се совпаднеподатоци:
MATCH(TRUE, EXACT( пребарувачка низа , пребарувачка вредност ), 0)Формулата работи со следнава логика:
- Функцијата EXACT ја споредува вредноста за пребарување со секој елемент од низата за пребарување. Ако споредените ќелии се точно еднакви, функцијата враќа TRUE, FALSE во спротивно.
- И потоа, функцијата MATCH споредува TRUE (што е нејзината lookup_value ) со секоја вредност во низата вратена од EXACT, и ја враќа позицијата на првото совпаѓање.
Ве молиме имајте на ум дека тоа е формула за низа која бара притискање на Ctrl + Shift + Enter за правилно да се заврши.
Претпоставувајќи дека вашата Вредноста за пребарување е во ќелијата E1, а низата за пребарување е A2:A9, формулата е следна:
=MATCH(TRUE, EXACT(A2:A9,E1),0)
Следната слика од екранот ја прикажува формулата Match чувствителна на букви во Excel:
Споредете 2 колони за совпаѓања и разлики (ISNA MATCH)
Проверувањето на две списоци за совпаѓања и разлики е една од најчестите задачи во Excel и може да биде направено на различни начини. Формулата ISNA/MATCH е една од нив:
IF(ISNA(MATCH( прва вредност во списокот1 , Список2 , 0)), „Не е во списокот 1“, " ")За која било вредност од списокот 2 што не е присутна во списокот 1, формулата враќа „ Не е во списокот 1 “. И еве како:
- Функцијата MATCH бара вредност од списокот 1 во списокот 2. Ако се најде вредност, ја враќа нејзината релативна позиција, грешка #N/Aво спротивно.
- Функцијата ISNA во Excel прави само една работа - проверува за #N/A грешки (што значи „не е достапна“). Ако дадената вредност е #N/A грешка, функцијата враќа TRUE, FALSE во спротивно. Во нашиот случај, ТОЧНО значи дека вредноста од списокот 1 не е пронајдена во списокот 2 (т.е. грешката #N/A е вратена од MATCH).
- Бидејќи може да биде многу збунувачки за вашите корисници да видат ТОЧНО за вредностите што не се појавуваат во списокот 1, ја завиткувате функцијата IF околу ISNA за да се прикаже „ Не во списокот 1 “, наместо тоа, или каков текст што сакате.
На пример , за да се споредат вредностите во колоната Б со вредностите во колоната А, формулата ја добива следната форма (каде што B2 е најгорната ќелија):
=IF(ISNA(MATCH(B2,A:A,0)), "Not in List 1", "")
Како што се сеќавате, функцијата MATCH во Excel сама по себе е нечувствителен на големи букви. За да ја разликувате буквата на знаците, вметнете ја EXACT функцијата во аргументот lookup_array и не заборавајте да притиснете Ctrl + Shift + Enter за да ја комплетирате оваа формула за низа :
=IF(ISNA(MATCH(TRUE, EXACT(A:A, B2),0)), "Not in List 1", "")
Следната слика од екранот ги прикажува двете формули во акција:
За да научите други начини за споредување на две списоци во Excel, погледнете го следново упатство: Како да споредите 2 колони во Excel.
Excel VLOOKUP и MATCH
Овој пример претпоставува дека веќе имате некои основни познавања за функцијата Excel VLOOKUP. И ако го правите тоа, големи се шансите да наидете на неговите бројни ограничувања (чиј детален преглед може да бидесе најде во Зошто Excel VLOOKUP не работи) и бараат поцврста алтернатива.
Една од најдосадните недостатоци на VLOOKUP е тоа што престанува да работи по вметнување или бришење колона во табела за пребарување. Ова се случува затоа што VLOOKUP повлекува соодветна вредност врз основа на бројот на повратната колона што ќе ја наведете (број на индекс). Бидејќи бројот на индексот е „тврдо-кодиран“ во формулата, Excel не може да го прилагоди кога се додаваат или бришат нова колона во табелата.
Excel Функцијата MATCH се занимава со релативна позиција на барана вредност, што ја прави совршено одговара за аргументот col_index_num на VLOOKUP. Со други зборови, наместо да ја наведете повратната колона како статичен број, користите MATCH за да ја добиете моменталната позиција на таа колона.
За да ги олесниме работите, ајде повторно да ја користиме табелата со резултатите од испитите на учениците (слично на онаа што ја користевме на почетокот на ова упатство), но овој пат ќе ја вратиме вистинската оценка, а не неговата релативна позиција.
Претпоставувајќи дека вредноста за пребарување е во ќелијата F1, низата табели е $A$1:$C$2 (добра практика е да го заклучите користејќи апсолутни референци на ќелиите ако планирате да ја копирате формулата во други ќелии), формулата оди како што следува:
=VLOOKUP(F1, $A$1:$C$8, 3, FALSE)
Третиот аргумент ( col_index_num ) е поставен на 3 бидејќи Math score што сакаме да го повлечеме е третата колона вомаса. Како што можете да видите на сликата од екранот подолу, оваа обична формула на Vlookup работи добро:
Но само додека не вметнете или избришете колона(и):
Па, зошто #REF! грешка? Бидејќи col_index_num поставено на 3 му кажува на Excel да добие вредност од третата колона, додека сега има само 2 колони во низата табели.
За да спречите такви работи да се случат, можете да направите вашата формула Vlookup подинамична со вклучување на следнава функција за совпаѓање:
MATCH(E2,A1:C1,0)
Каде:
- E2 е вредноста за пребарување, која е точно еднаква до името на повратната колона, т.е. колоната од која сакате да извлечете вредност ( Оценка по математика во овој пример).
- A1:C1 е низата за пребарување што ги содржи заглавија на табелата.
И сега, вклучете ја оваа функција Match во аргументот col_index_num на вашата формула Vlookup, вака:
=VLOOKUP(F1,$A$1:$C$8, MATCH(E2,$A$1:$C$1, 0), FALSE)
И погрижете се да работи беспрекорно без разлика колку колони додавате или избришете:
На сликата од екранот погоре, ги заклучив сите референци на ќелиите за формулата да работи правилно, дури и ако мојот корисниците го преместуваат на друго место во работниот лист. А што можете да го видите на екранот подолу, формулата работи добро по бришење колона; Покрај тоа, Excel е доволно паметен за правилно прилагодување на апсолутните референци во овој случај:
Excel HLOOKUP and MATCH
На сличен начин, можете да го користите Excel MATCH функција даподобрување на вашите формули HLOOKUP. Општиот принцип е суштински ист како и во случајот со Vlookup: ја користите функцијата Match за да ја добиете релативната позиција на колоната за враќање и го снабдувате тој број со аргументот row_index_num од вашата формула Hlookup.
Да претпоставиме дека вредноста за пребарување е во ќелијата B5, низата на табелите е B1:H3, името на повратниот ред (вредност за пребарување за MATCH) е во ќелијата A6 и заглавијата на редовите се A1:A3, комплетната формула е следна:
=HLOOKUP(B5, B1:H3, MATCH(A6, A1:A3, 0), FALSE)
Како што штотуку видовте, комбинацијата на Hlookup/Vlookup & Натпреварот е секако подобрување во однос на редовните формули Hlookup и Vlookup. Сепак, функцијата MATCH не ги елиминира сите нивни ограничувања. Конкретно, формулата на Vlookup Match сè уште не може да гледа лево, а Hlookup Match не може да пребарува во ниту еден ред освен во најгорниот.
За да ги надминете горенаведените (и неколку други) ограничувања, размислете за користење на комбинација на INDEX MATCH, која обезбедува навистина моќен и разновиден начин за пребарување во Excel, супериорен во однос на Vlookup и Hlookup во многу аспекти. Деталните упатства и примери на формула може да се најдат во INDEX & MATCH во Excel - подобра алтернатива на VLOOKUP.
Вака ги користите формулите MATCH во Excel. Се надеваме дека примерите дискутирани во ова упатство ќе се покажат како корисни во вашата работа. Ви благодарам што прочитавте и се надевам дека ќе се видиме на нашиот блог следната недела!