Kuidas teha Excelis Vlookup'i puhul suur- ja väiketähelepanu - valemite näited

  • Jaga Seda
Michael Brown

Õpetuses selgitatakse, kuidas muuta Exceli VLOOKUP-i suurustundlikuks, demonstreeritakse mõningaid teisi valemeid, mis eristavad teksti suurust, ning tuuakse välja iga funktsiooni tugevused ja piirangud.

Ma arvan, et iga Exceli kasutaja teab, milline funktsioon täidab Excelis vertikaalset otsingut. Õige, see on VLOOKUP. Kuid väga vähesed inimesed on teadlikud, et Exceli VLOOKUP on suur- ja väiketähtede suhtes tundmatu, mis tähendab, et see käsitleb väikseid ja suuri tähti samade tähtedena.

Siin on kiire näide, mis demonstreerib VLOOKUPi suutmatust eristada teksti suurust. Oletame, et kui teil on "arve" lahtris A2 ja "Bill" lahtris A4. Allpool olev valem püüab "arve", sest see on otsingumassiivis esimesena ja tagastab sobiva väärtuse lahtrist B2.

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

Edaspidi selles artiklis näitan teile viisi, kuidas muuta VLOOKUP-i suurustundlikuks. Uurime ka mõningaid teisi funktsioone, millega saab Excelis teha suurustundlikku sobitamist.

    Suur- ja väiketähelepanu VLOOKUP valem

    Nagu eespool mainitud, ei tunne tavaline VLOOKUP-valem tähtede suurust. Siiski on olemas võimalus muuta Exceli VLOOKUP suurustundlikuks, nagu on näidatud alljärgnevas näites.

    Oletame, et teil on Eseme ID-d veerus A ja soovite tõmmata artikli hinna ja kommentaari veergudest B ja C. Probleem on selles, et ID-d sisaldavad nii väikseid kui ka suuri tähti. Näiteks A4 (001Tvci3u) ja A5 (001Tvci3U) väärtused erinevad ainult viimase tähe, vastavalt "u" ja "U", poolest.

    Kui otsite "001Tvci3 U ", standardne VLOOKUP valem väljastab $90, mis on seotud "001Tvci3". u ", sest see tuleb enne "001Tvci3". U " otsingumassiivis. Aga see ei ole ju see, mida sa tahad, eks?

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

    Et teha Excelis suurustundlik otsing, kombineerime funktsioonid VLOOKUP, CHOOSE ja EXACT:

    VLOOKUP(TRUE, CHOOSE({1,2}, EXACT( lookup_value , lookup_array ), return_array ), 2, 0)

    See üldine valem töötab ideaalselt kõikides olukordades. Võite isegi otsida paremalt vasakule , mida tavaline VLOOKUP valem ei suuda teha. Kiitus Pouriya'le selle lihtsa ja elegantse lahenduse väljapakkumise eest!

    Meie puhul on tegelikud valemid järgmised.

    Hinna tõmbamiseks F3:

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

    Kommentaaride hankimiseks F4:

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

    Märkus. Kõikides Exceli versioonides, välja arvatud Excel 365, töötab see ainult massiivi valemina, seega ärge unustage vajutada Ctrl + Shift + Enter, et seda õigesti täita. Excel 365-s töötab see tänu dünaamiliste massiivide toetusele ka tavalise valemina.

    Kuidas see valem töötab:

    Põhiline osa, mis teeb trikki, on CHOOSE valem koos sisseehitatud EXACTiga:

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

    Siinkohal võrdleb funktsioon EXACT väärtust F2 iga väärtusega A2:A7 ja tagastab TRUE, kui need on täpselt samad, kaasa arvatud tähtede puhul, vastasel juhul FALSE:

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

    Sest index_num argumendiks CHOOSE, kasutame massiivi konstanti {1,2}. Selle tulemusena ühendab funktsioon loogilised väärtused ülaltoodud massiivi ja väärtused C2:C7 selliseks kahemõõtmeliseks massiiviks:

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

    Funktsioon VLOOKUP võtab selle sealt ja otsib otsinguväärtust (mis on TRUE) 2-mõõtmelise massiivi 1. veerus (mida esindavad loogilised väärtused) ja tagastab vaste 2. veerust, mis on hind, mida me otsime:

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

    Suur- ja väiketähendusega XLOOKUP valem

    Microsoft 365 tellijad saavad Excelis teha ka lihtsama valemiga suurustundliku otsingu. Nagu võite arvata, räägin ma VLOOKUPi võimsamast järeltulijast - funktsioonist XLOOKUP.

    Kuna XLOOKUP töötab otsingumassiividega ja tagastusmassiividega eraldi, ei ole meil vaja eelmises näites kasutatud kahemõõtmelise massiivi trikki. Lihtsalt kasutage EXACT jaoks lookup_array argument:

    XLOOKUP(TRUE, EXACT( lookup_value , lookup_array ), return_array , "Ei leitud")

    Viimane argument ("Ei leitud") on valikuline. See määrab lihtsalt, millist väärtust tagastada, kui vastet ei leita. Kui jätate selle välja, siis tagastatakse standardne #N/A viga, kui valem ei leia midagi.

    Meie näidistabeli puhul on need suur- ja väiketähelepanu arvestavad XLOOKUP-valemid, mida tuleb kasutada.

    Et saada hinda F3:

    =XLOOKUP(TRUE, EXACT(F2, A2:A7), B2:B7, "Ei leitud")

    Kommentaaride väljavõtmiseks F4:

    =XLOOKUP(TRUE, EXACT(F2, A2:A7), C2:C7, "Ei leitud")

    Kuidas see valem töötab:

    Nagu eelmises näites, tagastab EXACT TRUE ja FALSE väärtuste massiivi, kus TRUE tähistab suur- ja väiketähenduslikke vasteid. XLOOKUP otsib ülaltoodud massiivi TRUE väärtust ja tagastab vaste alates return_array Pange tähele, et kui otsingusammas on kaks või enam täpselt sama väärtust (sealhulgas tähe puhul), siis tagastab valem esimese leitud vaste.

    XLOOKUP piirang : saadaval ainult Excel 365 ja Excel 2021.

    SUMPRODUCT - suur- ja väiketähtedest sõltuv otsing, et tagastada sobivaid numbreid

    Nagu te pealkirjast aru saate, on SUMPRODUCT veel üks Exceli funktsioon, mis saab teha suur- ja väiketähendusega otsingut, kuid see võib tagastada numbrilised väärtused ainult. Kui see ei ole teie juhtum, siis hüpake INDEX MATCHi näite juurde, mis pakub lahendust kõigi andmetüüpide jaoks.

    Nagu te ilmselt teate, korrutab Exceli funktsioon SUMPRODUCT määratud massiividel olevad komponendid ja tagastab produktide summa. Kuna me tahame suurustundlikku otsingut, kasutame esimese massiivi saamiseks funktsiooni EXACT:

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

    Kahjuks ei saa funktsioon SUMPRODUCT tagastada teksti vasteid, kuna tekstiväärtusi ei saa korrutada. Sellisel juhul saate #VALUE! vea, nagu allpool esitatud ekraanipildi lahtris F4:

    Kuidas see valem töötab:

    Nagu VLOOKUP näites, kontrollib funktsioon EXACT F2 väärtust kõigi A2:A7 väärtuste suhtes ja tagastab TRUE, kui tegemist on suur- ja väiketähendusega, vastasel juhul FALSE:

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

    Enamikus valemites hindab Excel TRUE väärtuseks 1 ja FALSE väärtuseks 0. Seega, kui SUMPRODUCT korrutab kahe massiivi elemente samades positsioonides, muutuvad kõik mittevastavused (FALSE) nullideks:

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

    Tulemusena tagastab valem veerus B oleva numbri, mis vastab täpselt veerus A olevale suur- ja väiketähtedega vastusele.

    SUMPRODUCT piirang : võib tagastada ainult arvväärtusi.

    INDEX MATCH - kõigi andmetüüpide puhul suur- ja väiketähelepanu arvestav otsing

    Lõpuks oleme lähedal sellele, et saada piiranguteta suur- ja väiketähtedest sõltuv otsinguvormel, mis töötab kõigis Exceli versioonides ja kõikide andmekogumite puhul.

    See näide on viimane mitte ainult sellepärast, et parim jääb viimaseks, vaid ka sellepärast, et eelmistest näidetest saadud teadmised võivad aidata teil paremini mõista suur- ja väiketähendusega MATCH INDEXi valemit.

    Funktsioonide INDEX ja MATCH kombinatsiooni kasutatakse Excelis sageli VLOOKUPi paindlikuma ja mitmekülgsema alternatiivina. Järgnev artikkel selgitab (loodetavasti :) hästi, kuidas need kaks funktsiooni koos töötavad - INDEX MATCHi kasutamine VLOOKUPi asemel.

    Siinkohal tuletan teile lihtsalt meelde põhipunkte:

    • Funktsioon MATCH otsib otsinguväärtust määratud otsingumassiivist ja tagastab selle suhtelise positsiooni.
    • Otsinguväärtuse suhteline asukoht läheb otse row_num INDEX funktsiooni argumenti, mis annab sellele käsu tagastada selle rea väärtus.

    Selleks, et valem tunneks ära tekstikastme, tuleb klassikalisele INDEX MATCH kombinatsioonile lihtsalt lisada veel üks funktsioon. Ilmselt on jälle vaja funktsiooni EXACT:

    INDEX( return_array , MATCH(TRUE, EXACT( lookup_value , lookup_array ), 0))

    F3 tegelik valem on:

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

    F4-s kasutame seda:

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

    Pidage meeles, et see toimib ainult massiivi valemina kõigis versioonides peale Excel 365, seega sisestage see kindlasti, vajutades klahve Ctrl + Shift + Enter koos. Kui see on tehtud õigesti, siis valem pannakse suletute sulgude sisse, nagu on näidatud alloleval ekraanipildil:

    Kuidas see valem töötab:

    Nagu kõigis eelnevates näidetes, tagastab EXACT TRUE iga väärtuse puhul A2:A7, mis vastab täpselt väärtusele F2. Kuna me kasutame TRUE väärtust lookup_value MATCHi puhul tagastab see täpse, suur- ja väike-kodaniku vaste suhtelise positsiooni, mida INDEX vajab, et tagastada vaste B2:B7.

    Täiustatud suur- ja väiketähtedega otsinguvormel

    Eespool mainitud INDEX MATCH valem tundub täiuslik, eks ole? Aga tegelikult ei ole. Näitan teile, miks.

    Oletame, et tagastussamba lahter, mis vastab otsinguväärtusele, on tühi. Mida peab valem tagastama? Mitte midagi. Ja nüüd vaatame, mida ta tegelikult tagastab:

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

    Ups, valem tagastab nulli! Võib-olla ei ole see tegelikult oluline, kui tegemist on ainult tekstiväärtustega. Kui teie tööleht sisaldab aga numbreid ja mõned neist on tõelised nullid, on see probleemiks.

    Tegelikult käituvad kõik teised varem käsitletud otsinguvormelid samamoodi. Aga nüüd tahad sa ju laitmatut valemit?

    Selleks, et muuta suurustundlik INDEX MATCH valem täiesti täiuslikuks, mähkige see IF-funktsiooniga, mis kontrollib, kas tagastatav lahter on tühi, ja ei tagasta sel juhul midagi:

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

    Ülaltoodud valemiga:

    • "C" on tagastussammas.
    • "1" on number, mis muudab suhteline positsioon MATCH-funktsiooni poolt tagastatud lahtrisse tegelik raku aadress .

    Näiteks meie MATCH-funktsioonis on otsingumassiiv A2:A7, mis tähendab, et lahtri A2 suhteline asukoht on "1", sest see on massiivi esimene lahter. Kuid tegelikkuses algab otsingumassiiv reas 2. Et kompenseerida erinevust, lisame 1, nii et INDIRECT-funktsioon tagastab väärtuse paremast lahtrist.

    Allpool olevad ekraanipildid demonstreerivad täiustatud, suur- ja väiketähelepanu arvestavat INDEX MATCH valemit.

    Kui tagastatav lahter on tühi, ei väljasta valem midagi (tühi string):

    Kui tagastatav lahter sisaldab nulli, tagastab valem 0:

    Kui soovite pigem kuvada mingi sõnumi, kui tagastatav lahter on tühi, asendage tühi string ("") IF-i viimases argumendis mingi tekstiga:

    =IF(INDIRECT("C"&(1+MATCH(TRUE, EXACT(A2:A7, F2), 0))))"", INDEX(C2:C7, MATCH(TRUE, EXACT(A2:A7, F2), 0)), "Ei ole midagi tagastada, sorry.")

    Tehke VLOOKUPi lihtne viis, mis on suur- ja väiketähelepanu arvestav

    Meie Ultimate Suite for Exceli kasutajatel on spetsiaalne tööriist, mis muudab suurtes ja keerulistes tabelites otsimise lihtsamaks ja stressivabamaks. Parim asi on see, et Merge Two Tables on suurustundlik valik ja alljärgnev näide näitab seda praktikas.

    Oletame, et soovite tõmmata Qty. alates Vaata tabelisse Main tabelis, mis põhineb unikaalsetel objektide ID-del:

    Selleks tuleb käivitada viisard Merge Tables (Tabelite ühendamine) ja teha järgmised toimingud:

    1. Valige põhitabel, millesse uued andmed tõmmatakse.
    2. Valige otsingutabel, kust uusi andmeid otsida.
    3. Valige üks või mitu võtmeveergu (meie puhul Artikli ID). Ja kontrollige kindlasti, kas Eranditundlik sobitamine kast.

  • Nõustaja juhatab teid läbi ülejäänud kolme sammu, kus te määrate, milliseid veerge ajakohastada, milliseid veerge lisada ja vajadusel valite mõned lisavõimalused.
  • Hetk hiljem saate soovitud tulemuse :)

    See ongi, kuidas Excelis otsingut teha, võttes arvesse tekstilauseid. Tänan teid lugemise eest ja loodan, et näeme teid järgmisel nädalal meie blogis!

    Praktiline töövihik allalaadimiseks

    Suur- ja väiketähtedega VLOOKUP näited (.xlsx fail)

    Michael Brown on pühendunud tehnoloogia entusiast, kelle kirg on tarkvaratööriistade abil keerukate protsesside lihtsustamine. Rohkem kui kümneaastase kogemusega tehnoloogiatööstuses on ta lihvinud oma oskusi Microsoft Excelis ja Outlookis, samuti Google Sheetsis ja Docsis. Michaeli ajaveebi eesmärk on jagada oma teadmisi ja teadmisi teistega, pakkudes hõlpsasti järgitavaid näpunäiteid ja õpetusi tootlikkuse ja tõhususe parandamiseks. Olenemata sellest, kas olete kogenud professionaal või algaja, pakub Michaeli ajaveebi väärtuslikke teadmisi ja praktilisi nõuandeid nende oluliste tarkvaratööriistade maksimaalseks kasutamiseks.