Ինչպես կատարել մեծատառերի զգայուն Vlookup Excel-ում – բանաձևի օրինակներ

  • Կիսվել Սա
Michael Brown

Ուսուցումը բացատրում է, թե ինչպես Excel VLOOKUP-ը դարձնել մեծատառերի զգայուն, ցույց է տալիս մի քանի այլ բանաձևեր, որոնք տարբերում են տեքստի տառերը և մատնանշում յուրաքանչյուր ֆունկցիայի ուժեղ և սահմանափակում:

Կարծում եմ, որ ամեն Excel-ի օգտատերը գիտի, թե ինչ ֆունկցիա է կատարում Excel-ում ուղղահայաց որոնում: Ճիշտ է, դա VLOOKUP-ն է: Այնուամենայնիվ, շատ քչերը գիտեն, որ Excel-ի VLOOKUP-ը մեծատառերի նկատմամբ զգայուն չէ, ինչը նշանակում է, որ այն վերաբերվում է փոքրատառ և մեծատառ տառերին որպես նույն նիշերին:

Ահա մի արագ օրինակ, որը ցույց է տալիս VLOOKUP-ի անկարողությունը տարբերակել տեքստային տառերը: Ենթադրենք, եթե A2 բջիջում ունեք «հաշիվ», իսկ A4-ում՝ «Bill»: Ստորև բերված բանաձևը կբռնի «հաշիվը», քանի որ այն առաջինն է որոնման զանգվածում և վերադարձնում է համապատասխան արժեք B2-ից:

=VLOOKUP("Bill", A2:B4, 2, FALSE)

Այնուհետև այս հոդված, ես ձեզ ցույց կտամ VLOOKUP-ը մեծատառերի նկատմամբ զգայուն դարձնելու միջոց: Մենք կուսումնասիրենք նաև մի քանի այլ գործառույթներ, որոնք կարող են կատարել մեծատառերի զգայուն համընկնումը Excel-ում:

    Տառապանին զգայուն VLOOKUP բանաձև

    Ինչպես նշվեց վերևում, սովորական VLOOKUP բանաձևը չի ճանաչում նամակի գործը. Այնուամենայնիվ, Excel VLOOKUP-ը մեծատառերի նկատմամբ զգայուն դարձնելու միջոց կա, ինչպես ցույց է տրված ստորև բերված օրինակում:

    Ենթադրենք, որ դուք ունեք Նյութի ID-ներ սյունակ Ա-ում և ցանկանում եք որոշել ապրանքի գինը և մեկնաբանությունը: B և C սյունակներից: Խնդիրն այն է, որ ID-ները ներառում են և՛ փոքրատառ, և՛ մեծատառ նիշերը: Օրինակ, A4 (001Tvci3u) և A5 (001Tvci3U) արժեքները տարբերվում են միայնվերջին նիշը, համապատասխանաբար, «u» և «U»:

    Երբ փնտրում եք «001Tvci3 U », ստանդարտ VLOOKUP բանաձևը թողարկում է $90, որը կապված է «001Tvci3 u»-ի հետ: », քանի որ որոնման զանգվածում այն ​​գալիս է «001Tvci3 U »-ից առաջ: Բայց սա այն չէ, ինչ ցանկանում եք, այնպես չէ՞:

    =VLOOKUP(F2, A2:C7, 2, FALSE)

    Excel-ում մեծատառերի զգայուն որոնում կատարելու համար մենք համատեղում ենք VLOOKUP, CHOOSE և EXACT: ֆունկցիաներ՝

    VLOOKUP(ՃԻՇՏ, CHOOSE({1,2}, EXACT( որոնման_արժեք, որոնման_զանգված), վերադարձի_զանգված), 2, 0)

    Այս ընդհանուր բանաձևը հիանալի կերպով աշխատում է բոլոր իրավիճակներում: Դուք նույնիսկ կարող եք փնտրել աջից ձախ , մի բան, որը սովորական VLOOKUP բանաձևն ի վիճակի չէ անել: Փառք Պուրիային այս պարզ և էլեգանտ լուծումն առաջարկելու համար:

    Մեր դեպքում իրական բանաձևերը հետևյալն են.

    F3-ում գինը հանելու համար.

    =VLOOKUP(TRUE, CHOOSE({1,2}, EXACT(F2, A2:A7), B2:B7), 2, FALSE)

    F4 մեկնաբանությունը ստանալու համար՝

    =VLOOKUP(TRUE, CHOOSE({1,2}, EXACT(F2, A2:A7), C2:C7), 2, FALSE)

    Նշում. Excel 365-ից բացի բոլոր Excel տարբերակներում սա աշխատում է միայն որպես զանգվածի բանաձև, այնպես որ հիշեք, որ սեղմեք Ctrl + Shift + Enter այն ճիշտ ավարտելու համար: Excel 365-ում դինամիկ զանգվածների աջակցության շնորհիվ այն նաև աշխատում է որպես սովորական բանաձև։

    Ինչպես է աշխատում այս բանաձևը.

    Հիմնական մասը, որը կատարում է հնարքը, CHOOSE բանաձևն է՝ ներդիր EXACT.

    CHOOSE({1,2}, EXACT(F2, A2:A7), C2:C7)

    Ահա, EXACT ֆունկցիան համեմատում է F2-ի արժեքը A2:A7-ի յուրաքանչյուր արժեքի հետ և վերադարձնում է TRUE, եթե դրանք միանգամայն նույնն են, ներառյալ տառերի մեծությունը,FALSE հակառակ դեպքում՝

    {FALSE;FALSE;FALSE;TRUE;FALSE;FALSE}

    CHOOSE-ի index_num արգումենտի համար մենք օգտագործում ենք զանգվածի հաստատունը {1,2}: Արդյունքում ֆունկցիան միավորում է վերը նշված զանգվածի տրամաբանական արժեքները և C2:C7 արժեքները երկչափ զանգվածի մեջ, ինչպիսին է.

    {FALSE,155;FALSE,186;FALSE,90;TRUE,54;FALSE,159;FALSE,28}

    VLOOKUP ֆունկցիան այն վերցնում է այնտեղից: և որոնում է որոնման արժեքը (որը ճշմարիտ է) երկչափ զանգվածի 1-ին սյունակում (ներկայացվում է տրամաբանական արժեքներով) և վերադարձնում համընկնում 2-րդ սյունակից, որն այն գինն է, որը մենք փնտրում ենք.

    VLOOKUP(TRUE, {FALSE,155;FALSE,186;FALSE,90;TRUE,54;FALSE,159;FALSE,28}, 2, 0)

    Գրախոսների զգայուն XLOOKUP բանաձև

    Microsoft 365 բաժանորդները կարող են Excel-ում կատարել մեծատառերի զգայուն որոնում նույնիսկ ավելի պարզ բանաձևով: Ինչպես կարող եք կռահել, ես խոսում եմ VLOOKUP-ի ավելի հզոր իրավահաջորդի՝ XLOOKUP ֆունկցիայի մասին:

    Քանի որ XLOOKUP-ը գործում է առանձին որոնման և վերադարձման զանգվածների վրա, մեզ հարկավոր չէ երկչափ զանգվածի հնարքը նախորդից: օրինակ. Պարզապես օգտագործեք EXACT որոնման_զանգված արգումենտի համար.

    XLOOKUP(TRUE, EXACT( lookup_value , lookup_array ), return_array , " Չի գտնվել»)

    Վերջին արգումենտը («Չի գտնվել») պարտադիր չէ: Այն պարզապես սահմանում է, թե ինչ արժեք պետք է վերադարձնել, եթե համընկնում չգտնվի: Եթե ​​բաց թողնեք այն, ապա ստանդարտ #N/A սխալը կվերադարձվի, եթե բանաձևը ոչինչ չգտնի:

    Մեր օրինակելի աղյուսակի համար սրանք մեծատառերի զգայուն XLOOKUP բանաձևերն են, որոնք պետք է օգտագործել:

    F3-ում գինը ստանալու համար՝

    =XLOOKUP(TRUE, EXACT(F2, A2:A7), B2:B7, "Not found")

    Արդյունք հանելու համարմեկնաբանություն F4:

    =XLOOKUP(TRUE, EXACT(F2, A2:A7), C2:C7, "Not found")

    Ինչպես է աշխատում այս բանաձևը.

    Ինչպես նախորդ օրինակում, EXACT-ը վերադարձնում է TRUE և FALSE արժեքների զանգված, որտեղ TRUE-ը ներկայացնում է մեծատառերի համընկնում: XLOOKUP-ը վերը նշված զանգվածում որոնում է TRUE արժեքը և վերադարձնում համընկնում return_array -ից: Խնդրում ենք նկատի ունենալ, որ եթե որոնման սյունակում երկու կամ ավելի ճիշտ նույն արժեքներ կան (ներառյալ տառերի տառերը), ապա բանաձևը կվերադարձնի առաջին գտնված համընկնում:

    XLOOKUP սահմանափակում . հասանելի է միայն Excel 365-ում և Excel 2021-ում:

    SUMPRODUCT - մեծատառերի զգայուն որոնում` համապատասխան թվերը վերադարձնելու համար

    Ինչպես հասկանում եք վերնագրից, SUMPRODUCT-ը ևս մեկ Excel գործառույթ է, որը կարող է կատարել մեծատառերի զգայուն որոնում: , բայց այն կարող է վերադարձնել միայն թվային արժեքներ : Եթե ​​դա ձեր դեպքը չէ, ապա անցեք INDEX MATCH օրինակին, որը լուծում է տալիս տվյալների բոլոր տեսակների համար:

    Ինչպես հավանաբար գիտեք, Excel-ի SUMPRODUCT-ը բազմապատկում է բաղադրիչները նշված զանգվածներում և վերադարձնում ապրանքների գումարը: Քանի որ մենք ուզում ենք մեծատառերի նկատմամբ զգայուն որոնում, մենք օգտագործում ենք EXACT ֆունկցիան առաջին զանգվածը ստանալու համար.

    =SUMPRODUCT((EXACT(A2:A7,F2) * (B2:B7)))

    Ցավոք, SUMPRODUCT ֆունկցիան չի կարող վերադարձնել տեքստի համընկնում, քանի որ տեքստի արժեքները չեն կարող բազմապատկվել: Այս դեպքում դուք կստանաք #ԱՐԺԵՔ! սխալ, ինչպիսին F4 բջիջում է ստորև ներկայացված սքրինշոթում.

    Ինչպես է աշխատում այս բանաձևը.

    Ինչպես VLOOKUP օրինակում, EXACT ֆունկցիոնալ ստուգումներF2-ի արժեքը A2:A7-ի բոլոր արժեքների համեմատ և վերադարձնում է TRUE մեծատառերի համընկնումների համար, FALSE հակառակ դեպքում.

    SUMPRODUCT(({FALSE;FALSE;FALSE;TRUE;FALSE;FALSE}*{155;186;90;54;159;28}))

    Բանաձևերի մեծ մասում Excel-ը TRUE-ն գնահատում է 1-ի, իսկ FALSE-ը՝ 0-ի: Այսպիսով, երբ SUMPRODUCT-ը բազմապատկում է երկու զանգվածների տարրերը նույն դիրքերում, բոլոր չհամընկնող (FALSE) զրո են դառնում.

    SUMPRODUCT({0;0;0;54;0;0})

    Արդյունքում բանաձևը վերադարձնում է թվեր B սյունակ, որը համապատասխանում է A սյունակի ճշգրիտ մեծատառերի համընկնումին:

    SUMPRODUCT սահմանափակում . կարող է վերադարձնել միայն թվային արժեքներ:

    INDEX MATCH - մեծատառերի նկատմամբ զգայուն որոնում բոլոր տվյալների տեսակները

    Վերջապես, մենք մոտ ենք առանց սահմանափակումների մեծատառերի որոնման բանաձևի, որն աշխատում է Excel-ի բոլոր տարբերակներում և տվյալների բոլոր հավաքածուներում:

    Այս օրինակը վերջինն է ոչ միայն այն պատճառով, որ լավագույնը պահվում է վերջինի համար, բայց նաև այն պատճառով, որ նախորդ օրինակներում ստացած գիտելիքները կարող են օգնել ձեզ ավելի լավ հասկանալ մեծատառերի զգայուն MATCH INDEX բանաձևը:

    INDEX և MATCH ֆունկցիաների համակցությունը հաճախ օգտագործվում է: Նախկինում cel-ը՝ որպես VLOOKUP-ի ավելի ճկուն և բազմակողմանի այլընտրանք: Հետևյալ հոդվածը լավ աշխատանք է կատարում (հուսով եմ :) բացատրելով, թե ինչպես են այս երկու գործառույթները միասին աշխատում. VLOOKUP-ի փոխարեն INDEX MATCH-ի օգտագործումը:

    Այստեղ ես պարզապես կհիշեցնեմ ձեզ հիմնական կետերը.

    • MATCH ֆունկցիան որոնում է որոնման արժեքը նշված որոնման զանգվածում և վերադարձնում դրա հարաբերական դիրքը:
    • ՀարաբերականըՈրոնման արժեքի դիրքը ուղղակիորեն անցնում է INDEX ֆունկցիայի row_num արգումենտին, որը հանձնարարում է նրան արժեք վերադարձնել այդ տողից:

    Տեքստի տառերը ճանաչելու բանաձևի համար դուք պարզապես պետք է ևս մեկ ֆունկցիա ավելացնել դասական INDEX MATCH համակցությանը: Ակնհայտ է, որ ձեզ կրկին անհրաժեշտ է EXACT ֆունկցիան.

    INDEX( վերադարձի_զանգված , MATCH(ՃԻՇՏ, EXACT( որոնման_արժեքը , որոնման_զանգված ), 0))

    F3-ում իրական բանաձևը հետևյալն է.

    =INDEX(B2:B7, MATCH(TRUE, EXACT(A2:A7, F2), 0))

    F4-ում մենք օգտագործում ենք այս մեկը.

    =INDEX(C2:C7, MATCH(TRUE, EXACT(A2:A7, F2), 0))

    Խնդրում ենք հիշել, որ այն աշխատում է միայն որպես զանգվածի բանաձև բոլոր տարբերակներում, բացի Excel 365-ից, այնպես որ համոզվեք, որ մուտքագրեք այն՝ սեղմելով Ctrl + Shift + Enter ստեղները միասին: Եթե ​​ճիշտ արվի, բանաձևը կփակվի գանգուր փակագծերի մեջ, ինչպես ցույց է տրված ստորև ներկայացված սքրինշոթում.

    Ինչպես է աշխատում այս բանաձևը.

    Ինչպես բոլոր նախորդ օրինակներում, EXACT-ը վերադարձնում է TRUE A2:A7-ի յուրաքանչյուր արժեքի համար, որը ճշգրտորեն համապատասխանում է F2-ի արժեքին: Քանի որ մենք օգտագործում ենք TRUE-ը MATCH-ի որոնման_արժեքը -ի համար, այն վերադարձնում է ճշգրիտ մեծատառերի համընկնման հարաբերական դիրքը, ինչը հենց այն է, ինչ INDEX-ին անհրաժեշտ է B2:B7-ից համապատասխանությունը վերադարձնելու համար:

    Ընդլայնված մեծատառերի նկատմամբ զգայուն որոնման բանաձև

    Վերոհիշյալ INDEX MATCH բանաձևը կատարյալ տեսք ունի, չէ՞: Բայց իրականում դա այդպես չէ։ Թույլ տվեք ցույց տալ ձեզ, թե ինչու:

    Ենթադրենք, որոնման արժեքին համապատասխանող վերադարձի սյունակի բջիջը դատարկ է: Ի՞նչ կվերադարձնի բանաձևը: Ոչինչ։Եվ հիմա, եկեք տեսնենք, թե իրականում ինչ է վերադարձնում.

    =INDEX(C2:C7, MATCH(TRUE, EXACT(A2:A7, F2), 0))

    Վա՜յ, բանաձևը վերադարձնում է զրո: Միգուցե դա իսկապես կարևոր չէ, երբ գործ ունենք բացառապես տեքստային արժեքների հետ: Այնուամենայնիվ, եթե ձեր աշխատաթերթը պարունակում է թվեր, և դրանցից մի քանիսը իրական զրո են, սա խնդիր է:

    Իրականում, նախկինում քննարկված բոլոր այլ որոնման բանաձևերը նույն կերպ են վարվում: Բայց հիմա դուք ուզում եք անբասիր բանաձև, այնպես չէ՞:

    Որպեսզի INDEX MATCH բանաձևը բացարձակապես կատարյալ լինի, դուք այն փաթաթում եք IF ֆունկցիայի մեջ, որը ստուգում է, թե արդյոք վերադարձի բջիջը դատարկ է և ոչինչ չի վերադարձնում: այս դեպքում՝

    =IF(INDIRECT("C"&(1+MATCH(TRUE,EXACT(A2:A7, F2), 0)))"", INDEX(C2:C7, MATCH(TRUE, EXACT(A2:A7, F2), 0)), "")

    Վերոնշյալ բանաձևում.

    • «C»-ը վերադարձի սյունակն է։
    • «1»-ը համարն է։ որը MATCH ֆունկցիայի կողմից վերադարձված բջիջի հարաբերական դիրքը վերածում է իսկական բջջի հասցեի :

    Օրինակ, որոնման զանգվածը մեր MATCH ֆունկցիայի մեջ A2:A7 է, այսինքն՝ A2 բջիջի հարաբերական դիրքը «1» է, քանի որ սա զանգվածի առաջին բջիջն է: Բայց իրականում որոնման զանգվածը սկսվում է 2-րդ շարքից: Տարբերությունը փոխհատուցելու համար մենք ավելացնում ենք 1, այնպես որ INDIRECT ֆունկցիան արժեք կվերադարձնի աջ բջիջից:

    Սքրինշոթները ցույց են տալիս բարելավված մեծատառերի զգայուն INDEX-ը: MATCH բանաձևը գործողության մեջ է:

    Եթե վերադարձի բջիջը դատարկ է, բանաձևը ոչինչ չի տալիս (դատարկ տող):

    Եթե վերադարձի բջիջը պարունակում է զրո: , բանաձևը վերադարձնում է 0:

    Եթե ցանկանում եքցուցադրել որոշ հաղորդագրություն, երբ վերադարձի բջիջը դատարկ է, փոխարինեք դատարկ տողը ("") IF-ի վերջին արգումենտում որոշ տեքստով.

    =IF(INDIRECT("C"&(1+MATCH(TRUE, EXACT(A2:A7, F2), 0)))"", INDEX(C2:C7, MATCH(TRUE, EXACT(A2:A7, F2), 0)), "There is nothing to return, sorry.")

    Կատարեք մեծատառերի զգայուն VLOOKUP-ը հեշտ ճանապարհով

    Մեր Ultimate Suite-ի օգտատերերը Excel-ի համար ունեն հատուկ գործիք, որը հեշտացնում է մեծ և բարդ աղյուսակներում փնտրելն ավելի հեշտ և առանց սթրեսի: Լավագույնն այն է, որ Merge Two Tables-ն ունի մեծատառերի զգայուն տարբերակ, և ստորև բերված օրինակը ցույց է տալիս այն գործողության մեջ:

    Ենթադրենք, որ ցանկանում եք քաշել Qty: Փնտրել աղյուսակից մինչև Հիմնական աղյուսակը` հիմնված եզակի տարրի ID-ների վրա. wizard-ը և կատարեք հետևյալ քայլերը.

    1. Ընտրեք հիմնական աղյուսակը, որտեղ պետք է ներգրավվեն նոր տվյալներ:
    2. Ընտրեք որոնման աղյուսակը, որտեղ փնտրել նոր տվյալները:
    3. Ընտրեք մեկ կամ մի քանի հիմնական սյունակ (մեր դեպքում նյութի ID-ն): Եվ համոզվեք, որ ստուգեք Փոքրատառերի համընկնում վանդակը:

  • Վիզարդը ձեզ կուղեկցի մնացած երեք քայլերը, որտեղ դուք նշում եք, թե որ սյունակները թարմացնեք, որ սյունակներն ավելացնեք և անհրաժեշտության դեպքում ընտրեք լրացուցիչ տարբերակներ:
  • Մի պահ անց դուք կստանաք ցանկալի արդյունքը :)

    Ահա թե ինչպես կարելի է որոնել Excel-ում՝ հաշվի առնելով տեքստի գործը: Ես շնորհակալություն եմ հայտնում կարդալու համար և հուսով եմ, որ հաջորդ շաբաթ կտեսնենք ձեզ մեր բլոգում:

    Ներբեռնելու համար վարժեցեք աշխատանքային գրքույկը

    Փոքրատառերի զգայուն VLOOKUP օրինակներ (.xlsx ֆայլ)

    Մայքլ Բրաունը նվիրված տեխնոլոգիայի էնտուզիաստ է, որը ձգտում է պարզեցնել բարդ գործընթացները՝ օգտագործելով ծրագրային գործիքները: Տեխնոլոգիական ոլորտում ավելի քան մեկ տասնամյակ փորձ ունենալով՝ նա կատարելագործել է իր հմտությունները Microsoft Excel-ում և Outlook-ում, ինչպես նաև Google Sheets-ում և Docs-ում: Մայքլի բլոգը նվիրված է իր գիտելիքներն ու փորձառությունը ուրիշների հետ կիսելուն՝ տրամադրելով հեշտ օգտագործվող խորհուրդներ և ձեռնարկներ՝ արտադրողականությունն ու արդյունավետությունը բարձրացնելու համար: Անկախ նրանից, թե դուք փորձառու մասնագետ եք, թե սկսնակ, Մայքլի բլոգը առաջարկում է արժեքավոր պատկերացումներ և գործնական խորհուրդներ՝ առավելագույն օգուտ քաղելու այս կարևոր ծրագրային գործիքներից: