Բովանդակություն
Այսօր ես համեմատական վերլուծություն կանեմ XLOOKUP ընդդեմ INDEX-MATCH ֆունկցիաների Excel -ում: Excel -ի ավելի վաղ տարբերակներում մենք օգտագործում էինք HLOOKUP , VLOOKUP և INDEX-MATCH գործառույթները փնտրելու համար: որոշակի արժեք մի շարք բջիջներում: Այնուամենայնիվ, Office 365 -ի ի հայտ գալով, Excel-ը մեզ տրամադրել է նոր և դինամիկ ֆունկցիա, որը կոչվում է XLOOKUP ` նմանատիպ գործողություն ավելի բարդ իրականացնելու համար: Այս հոդվածում ես կփորձեմ համեմատել լայնորեն կիրառվող գործառույթները՝ XLOOKUP և INDEX-MATCH :
Ներբեռնել պրակտիկայի աշխատանքային գիրքը
Ստացեք այս նմուշ ֆայլը ավելի լավ հասկանալու համար:
XLOOKUP vs INDEX-MATCH Functions.xlsx
Ներածություն XLOOKUP ֆունկցիայի
XLOOKUP ֆունկցիան օգտագործվում է բջիջների կամ զանգվածի տիրույթում որոշակի արժեք գտնելու համար: Դրանից հետո այն վերադարձնում է համապատասխան առաջին խաղը։ Այն նաև ցույց է տալիս ամենամոտ կամ մոտավոր համընկնումը, երբ ճշգրիտ համընկնում չկա:
Սինտաքս՝
=XLOOKUP(lookup_value,lookup_array, return_array,[if_not_found] ,[match_mode],[ search_mode])
Փաստարկներ.
- Lookup_value . Դա այն արժեքն է, որը մենք ենք որոնում է տիրույթի որոշակի սյունակում:
- Lookup_array . Դա այն զանգվածն է, որտեղ մենք փնտրում ենք lookup_value : Կարող է լինել և՛ շարք, և՛առաջին կամ վերջին հանդիպումը. Առաջին համընկնող արժեքը ստանալու համար search_type արգումենտը սահմանեք 1 : Իսկ վերջին համընկնող արժեքը ստանալու համար search_type արգումենտը սահմանեք -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_արժեքներ (Array Formula):
- XLOOKUP ֆունկցիայի համար կաշխատի հետևյալ բանաձևը:
=XLOOKUP(G5:G8,B5:B16,E5:E16,"Not Found",0,1)
- Այնուհետև INDEX-MATCH -ի համար կաշխատի նաև հետևյալ ֆունկցիան։
=INDEX(B5:E16,MATCH(G5:G8,B5:B16,0),4)
Առավելությունները & AMP; XLOOKUP ֆունկցիայի թերությունները
Կան որոշակի առավելություններ և թերություններ XLOOKUP ֆունկցիայի օգտագործման մեջ: Եկեք տեսնենք դրանք հակիրճ:
Առավելությունները
- Սահմանել լռելյայն արժեք՝ չհամընկնող դեպքերի համար:
- Կարող է որոնել մոտավոր համընկնումներ՝ առանց lookup_զանգվածը տեսակավորելու :
- Մուտք գործեք որոնել lookup_զանգվածի և՛ առաջին, և՛ վերջին բջիջներից :
Թերությունները
- Աշխատում է ավելի դանդաղ, քան INDEX-MATCH-ը ֆունկցիան:
- Հասանելի է միայն Office 365 -ում:
Առավելությունները & INDEX-MATCH ֆունկցիաների թերությունները
INDEX-MATCH ֆունկցիաները նույնպես ունեն հետևյալ դրական և բացասական կողմերը:
Առավելությունները
- Աշխատում է ավելի արագ, քան XLOOKUP ֆունկցիան:
- Հասանելի է հին Excel տարբերակներում:
Թերությունները
- Չի կարող կարգավորել սխալները, երբ համընկնում չի գտնվել:
- Անհրաժեշտ է lookup_զանգվածը տեսակավորել մոտավոր համընկնումների համար:
- Վերադարձնում է միայն առաջին արժեքը, երբ մի քանի արժեքներ համընկնում են lookup_value ։
Եզրակացություն
Վերջապես, մենք մեր երկար հոդվածի վերջում ենք։ Այստեղ մենք փորձեցինք ստեղծել Excel-ում XLOOKUP ընդդեմ INDEX-MATCH ֆունկցիաների համեմատական վերլուծություն: Տեղեկացրեք մեզ այս մասին ձեր խորաթափանց առաջարկությունների մասին: Հետևեք ExcelWIKI լրացուցիչ ձեռնարկների համար:
սյունակ։Ընտրովի փաստարկներ.
- If_not_found : Դա այն արժեքն է, որը կվերադարձվի այն դեպքում, եթե lookup_array -ը չունենա lookup_արժեքը:
- Match_mode . Դա թիվ է, որը ցույց է տալիս ձեր ուզած lookup_value համընկնման տեսակը: Սա կամընտիր փաստարկ է: Այն կարող է պարունակել չորս արժեք:
- Երբ այն լինի 0 , XLOOKUP -ը կփնտրի ճշգրիտ համընկնում (կանխադրված):
- Երբ այն լինի 1 , XLOOKUP նախ կփնտրի ճշգրիտ համընկնում: Եթե ճշգրիտ համընկնում չգտնվի, այն կհամապատասխանի հաջորդ ավելի փոքր արժեքին:
- Երբ այն -1 է, XLOOKUP նախ կփնտրի ճշգրիտ համընկնում: Եթե ճշգրիտ համընկնում չգտնվի, այն կհամընկնի հաջորդ ավելի մեծ արժեքի հետ:
- Երբ այն լինի 2 , XLOOKUP նախ կփնտրի մոտավոր համընկնում` օգտագործելով Wildcards ( Կիրառելի է միայն տողերի որոնման արժեքների համար):
- Search_mode . Դա թվ է, որը ցույց է տալիս որոնման_զանգվածի վրա կատարվող որոնման գործողության տեսակը: Սա նույնպես ընտրովի է: Այն կարող է ունենալ նաև չորս արժեք՝
- Եթե դա 1 է, XLOOKUP -ը կփնտրի վերևից ներքև lookup_զանգվածում (կանխադրված):
- Երբ այն -1 է, XLOOKUP -ը կփնտրի ներքևից վերև
- Եթե <1 է:>2 , XLOOKUP -ը կանցկացնի աերկուական որոնում աճման կարգով:
- Երբ այն լինի -2 , XLOOKUP -ը կանցկացնի երկուական որոնում նվազման կարգով:
Ներածություն դեպի INDEX-MATCH ֆունկցիաներ
INDEX-MATCH ֆունկցիաների համակցությունն օգտագործվում է տվյալ վայրից արժեք վերցնելու և աղբյուրի տիրույթին համապատասխանեցնելու համար:
Շարահյուսություն՝
=INDEX(զանգված, MATCH(որոնման_արժեք, փնտրման_զանգված, համընկնում_տիպ), սյունակի_առանց)
Փաստարկներ՝
INDEX ֆունկցիայի համար՝
- Զանգված . Դա բջիջների տիրույթ է, որտեղից մենք ցանկանում ենք արժեք հանել:
- MATCH(lookup_value,lookup_array,match_type): Դա այն տիրույթի տողի համարն է, որտեղ որոնման_արժեքը համընկնում է որոշակի արժեքի որոնման_զանգվածում :
- No_of_column: Դա զանգվածի սյունակի թիվն է, որտեղից մենք ցանկանում ենք վերադարձնել lookup_արժեքին -ին համապատասխանող արժեքը:
- Որոնել_արժեքը: Դա այն արժեքն է, որը մենք փնտրում ենք:
- Looku p_array: Դա այն զանգվածն է, որում մենք փնտրում ենք lookup_value : Այն կարող է լինել և՛ տող, և՛ սյունակ:
- Համապատասխանության_տեսակ. Այն ամբողջ թիվ է, որը ցույց է տալիս մեր փնտրած համընկնման տեսակը: Սա ընտրովի է:
- Երբ այն լինի -1 , MATCH նախ կփնտրի ճշգրիտ համընկնում: Եթե ճշգրիտ համընկնում չգտնվի, այն կփնտրի հաջորդ ավելի մեծ արժեքը (կանխադրված)( XLOOKUP -ի հակառակը):
Բայց պայմանն այն է, որ lookup_array -ը պետք է դասավորված լինի աճման կարգով: Հակառակ դեպքում, այն ցույց կտա սխալ:
- Երբ այն լինի 1 , MATCH -ը նույնպես նախ կփնտրի ճշգրիտ համընկնում: Եթե ճշգրիտ համընկնում չգտնվի, այն կփնտրի հաջորդ ավելի փոքր արժեքը ( XLOOKUP -ի հակառակ):
Բայց պայմանն այն է, որ lookup_array այս անգամ պետք է դասավորված լինի նվազման կարգով: Հակառակ դեպքում, այն ցույց կտա սխալ:
- Երբ այն լինի 0 , MATCH -ը կփնտրի ճշգրիտ համընկնում:
Կարդալ ավելին. Ինչպես ընտրել հատուկ տվյալներ Excel-ում (6 մեթոդ)
7 համեմատություններ XLOOKUP-ի և INDEX-MATCH ֆունկցիաների օգտագործման միջև
Այժմ մենք բաժանեցինք բանաձևը, եկեք քննարկենք երկու գործառույթների միջև որոշ նմանություններ և տարբերություններ: Նախքան հիմնական քննարկումներին անցնելը, ես ձեր հարմարության համար ցույց եմ տալիս աղյուսակի հիմնական կետերը:
Քննարկման կետ | Նմանություն/Տարբերություն | Բացատրություն |
Սյունակների որոնման_զանգված | Նմանություն | Երկուսն էլ աջակցում են սյունակին որպես փնտրման_զանգված: |
Տողերի որոնման_զանգված | Նմանություն | Երկուսն էլ աջակցում են տողին: որպես lookup_զանգված: |
Ոչ մի համընկնում lookup_value | Տարբերություն | XLOOKUP-ն ունի լռելյայն կարգավորման տարբերակ` չհամապատասխանելու համարփնտրման_արժեք. Բայց INDEX-MATCH-ը չունի: |
Մոտավոր համընկնում | Մասնակի նմանություն | XLOOKUP-ը կարող է պարզել հաջորդ փոքրը կամ հաջորդ ավելի մեծ արժեքը, երբ ճշգրիտ համընկնում չկա: INDEX-MATCH-ը նույնպես կարող է դա անել, սակայն lookup_array-ը պետք է տեսակավորվի աճման կամ նվազման կարգով: |
Համապատասխանող նիշերը | Նմանություն | Երկուսն էլ աջակցում են համապատասխան Wildcards: |
Բազմաթիվ արժեքների համապատասխանեցում | Մասնակի նմանություն | XLOOKUP-ը կարող է պարզել կամ առաջին կամ վերջին արժեքը, երբ մի քանի արժեքներ համընկնում են: Բայց INDEX-MATCH-ը կարող է վերադարձնել միայն առաջին համընկնող արժեքը: |
Array Formula | Similarity | Երկուսն էլ աջակցում են զանգվածին: բանաձև: |
1. XLOOKUP և INDEX-MATCH to Lookup Value-ը սյունակում
Այս առումով երկու գործառույթների միջև նմանություն կա: XLOOKUP և INDEX-MATCH -ի համար lookup_array-ը կարող է լինել սյունակ երկու ֆունկցիաների համար: Այստեղ մենք փնտրում ենք աշակերտի անվան ճշգրիտ նիշերը ֆիզիկայում C ell F5 , Ջենիֆեր Մարլո : Մենք ուզում էինք որոնել վերևից ներքև Ուսանողի անունը սյունակում և վերադարձնել « Չգտնվել », եթե համընկնում չգտնվի:
- <1-ի համար:>XLOOKUP , կիրառեք բանաձեւը Cell 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 -ը կարող է նաև տող լինել երկու ֆունկցիաների համար: Պատկերացնելու համար մենք ունենք նոր տվյալների բազա՝ ID-ներ , Անուններ և Ֆիզիկայի նշաններ և Գնահատականներ :
Եկեք մի պահ համարենք, որ սա շատ լայն տվյալների հավաքածու է, և մենք չգիտենք, թե որն է Grade սյունակի թիվը: Այնուհետև որոշակի աշակերտի գնահատականը պարզելու համար մենք պետք է օգտագործենք Վերագրերի տողը (B4:E4) որպես որոնման_զանգված և “ Գնահատական ” բառը որպես lookup_արժեք . Մենք կարող ենք դա իրականացնել՝ օգտագործելով և՛ XLOOKUP , և՛ INDEX-MATCH :
- 3-րդ աշակերտի գնահատականը պարզելու համար , XLOOKUP բանաձևը կլինի այսպիսին Cell G5 -ում։
=XLOOKUP("Grade",B4:E4,B7:E7,"Not Found",0,1)
- Այս դեպքում INDEX-MATCH բանաձևը կլինի.
=INDEX(B5:E16,3,MATCH("Grade",B4:E4,0))
3. XLOOKUP և INDEX-MATCH, երբ համընկնում չի գտնվել
Երկու գործառույթներն այս առումով իրար նման չեն: Եթե lookup_value-ը չի համընկնում lookup_array -ի որևէ արժեքի, կարող եք սահմանել ֆիքսված արժեք, որը պետք է վերադարձվի XLOOKUP -ում: Դա անելու համար դուք պետք է սահմանեք դաարժեքը if_not_found արգումենտում: Մյուս կողմից, INDEX-MATCH -ում նման տարբերակ չկա։ Այն կվերադարձնի սխալ: Սխալը կարգավորելու համար դուք պետք է օգտագործեք IFERROR ֆունկցիան դրսում: Տվյալների հավաքածուում մենք կիմանանք Աշակերտի անունը ID 100-ով :
- Դրա համար օգտագործեք հետևյալ XLOOKUP բանաձևը<1-ում:> Բջջ G5 .
=XLOOKUP(100,B5:B16,C5:C16,"Not Found",0,1)
- Մյուս կողմից, կիրառեք սա INDEX-MATCH բանաձև:
=INDEX(B5:E16,MATCH(100,B5:B16,0),2)
- Քանի որ այն վերադարձնում է սխալ, դուք պետք է օգտագործել IFERROR գործառույթը դրսում այս սխալը կարգավորելու համար:
=IFERROR(INDEX(B5:E16,MATCH(100,B5:B16,0),2),"Not Found")
Նմանատիպ ընթերցումներ
- Excel INDEX MATCH՝ մեկ բջիջում բազմակի արժեքներ վերադարձնելու համար
- Excel INDEX-MATCH բազմակի արժեքներ վերադարձնելու բանաձև Հորիզոնական
- Ինչպես օգտագործել INDEX-MATCH բանաձևը Excel-ում բազմաթիվ արդյունքներ ստեղծելու համար
- [Ստուգված է:] INDEX MATCH-ը չի վերադարձնում ճիշտ արժեքը Excel-ում (5 պատճառ)
- Ինչպես օգտագործել INDEX MATCH-ը Excel-ում VLOOKUP-ի փոխարեն (3 եղանակ)
4. XLOOKUP և INDEX-MATCH-ը Մոտավոր համընկնումների դեպք
Այս առումով երկու գործառույթների միջև կա մասնակի նմանություն: XLOOKUP ֆունկցիայում, եթե lookup_value -ը չի համընկնում lookup_զանգվածի որևէ արժեքի , կարող եք փոփոխել բանաձևը` վերադարձնելու հաջորդ փոքր կամ հաջորդ ավելի մեծ արժեքը: . Սահմանեք փաստարկը match_type to -1 եթե ցանկանում եք հաջորդ փոքր արժեքը և սահմանեք այն 1 , եթե ցանկանում եք հաջորդ ավելի մեծ արժեքը:
Օրինակ , ուսանողին կիմանանք 50 կամ հաջորդ ավելի մեծ նշանով։
- Արժեքը գտնելու համար կիրառեք այս XLOOKUP բանաձևը։
=XLOOKUP(50,D5:D16,C5:C16,"Not Found",1,1)
- Ինչպես տեսնում եք 50 գնահատական ունեցող ուսանող չկա. . Ահա թե ինչու այն ցույց է տալիս 50 -ից անմիջապես հետո, 51 Desmond Hayes -ից անմիջապես հետո:
Նույն տարբերակն էլ կա: INDEX-MATCH բանաձև: Բայց թերությունն այն է, որ դուք պետք է տեսակավորեք lookup_array-ը նվազման կարգով, եթե ցանկանում եք հաջորդ ավելի մեծ արժեքը: Հակառակ դեպքում, այն կվերադարձնի սխալ: Իսկ հաջորդ ավելի փոքր արժեքը ստանալու համար դուք պետք է տեսակավորեք աճման կարգով:
- Նախ, այս բանաձևը տեղադրեք Cell G5 -ում:
=INDEX(B5:E16,MATCH(50,D5:D16,-1),2)
- Արդյունքում կտեսնեք, որ արդյունքը ցույց է տալիս #N/A սխալ .
- Հետևաբար տեսակավորեք D5:D16 բջիջների միջակայքը աճման կարգով և կստանաք ճիշտ արժեքը:
Հատուկ նշում․ XLOOKUPֆունկցիայի մեջ -1աշխատում է հաջորդ ավելի փոքր արժեքի համար, բայց INDEX-MATCH, -1աշխատում է հաջորդ ավելի մեծ արժեքի համար: Նմանապես XLOOKUPֆունկցիայում 1-ն աշխատում է հաջորդ ավելի մեծ արժեքի համար, բայց INDEX-MATCH-ում 1աշխատում է հաջորդ ավելի փոքր արժեքի համար:
Կարդալ ավելին. 2> Ինչպես օգտագործելINDEX-ը և Match-ը մասնակի համընկնման համար (2 եղանակ)
5. XLOOKUP և INDEX-MATCH համընկնման վայրի նշանների դեպքում
Այս առումով երկու գործառույթների միջև նմանություն կա: XLOOKUP և INDEX-MATCH , երկուսն էլ աջակցում են Waldcards : Այստեղ մենք կիմանանք ցանկացած ուսանողի, որի երկրորդ անունն է « Marlo »: Եկեք հետևենք ստորև նշված քայլերին՝ տեսնելու XLOOKUP ընդդեմ INDEX-MATCH համեմատությունը:
- Նախ, կիրառեք այս XLOOKUP բանաձևը <1-ում:>Բջջ G5 ելքը ստանալու համար:
=XLOOKUP("*Marlo*",C5:C16,C5:C16,"Not Found",2,1)
Նշում. XLOOKUP-ում wildcars օգտագործելու համար դուք պետք է match_typeարգումենտը սահմանեք 2: Հակառակ դեպքում այն չի աշխատի:
- Մյուս կողմից, նույն առաջադրանքն իրականացնելու INDEX-MATCH բանաձևը կլինի այսպիսին:
=INDEX(B5:E16,MATCH("*Marlo*",C5:C16,0),2)
Կարդալ ավելին. Ինդեքսի համընկնում բազմաթիվ չափանիշների հետ wildcard Excel-ում (Ամբողջական ուղեցույց )
6. XLOOKUP և INDEX-MATCH Երբ բազմաթիվ արժեքներ համընկնում են որոնման արժեքին
Այս օրինակը ցույց է տալիս XLOOKUP ընդդեմ INDEX-MATCH երբ բազմաթիվ արժեքներ համապատասխանում են որոնման արժեքին: Այս առումով կա նաև մասնակի նմանություն երկու գործառույթների միջև: XLOOKUP և INDEX-MATCH երկուսն էլ վերադարձնում են միայն մեկ արժեք, եթե lookup_զանգվածի մի քանի արժեքներ համընկնեն lookup_արժեքին : Բայց XLOOKUP ֆունկցիայի մեջ դուք կարող եք փոփոխել որոնումը, որպեսզի ստանաք որևէ մեկը