"Excel" HLOOKUP funkcija su formulės pavyzdžiais

  • Pasidalinti
Michael Brown

Kaip tikriausiai žinote, "Microsoft Excel" turi tris reikšmės paieškos funkcijas - LOOKUP, VLOOKUP ir HLOOKUP - ir, atrodo, jos labiausiai klaidina naudotojus. Šioje pamokoje daugiausia dėmesio skirsime "Excel" funkcijos HLOOKUP ypatumams ir aptarsime keletą formulės pavyzdžių, kurie padės efektyviausiai ją naudoti "Excel" programoje.

    Kas yra HLOOKUP programoje "Excel"?

    "Excel" funkcija HLOOKUP skirta horizontali paieška Tiksliau tariant, ieškoma tam tikros reikšmės pirmoje lentelės eilutėje ir grąžinama kita reikšmė tame pačiame stulpelyje iš jūsų nurodytos eilutės.

    Funkcija HLOOKUP veikia visose "Microsoft Excel 2016", "Excel 2013", "Excel 2013", "Excel 2010", "Excel 2007" ir žemesnėse versijose.

    "Excel" HLOOKUP sintaksė ir naudojimo būdai

    "Excel" funkcija HLOOKUP turi šiuos argumentus:

    HLOOKUP(lookup_value, table_array, row_index_num, [range_lookup])
    • Lookup_value (privaloma) - ieškoma reikšmė. Tai gali būti langelio nuoroda, skaitinė reikšmė arba teksto eilutė.
    • Table_array (būtina) - dvi ar daugiau duomenų eilučių, kuriose ieškoma paieškos reikšmės. Tai gali būti įprastas intervalas, įvardytas intervalas arba lentelė. Paieškos reikšmės visada turi būti pirmoji eilutė table_array .
    • Row_index_num (privaloma) - lentelės_dėžutės, iš kurios turėtų būti grąžinama reikšmė, eilutės numeris. Pavyzdžiui, norėdami grąžinti atitinkamą reikšmę iš 2-osios eilutės, nustatykite eilutės_indekso_numerį 2 ir t. t.
    • Range_lookup (neprivaloma) - loginė (loginė) reikšmė, nurodanti HLOOKUP ieškoti pagal tikslų arba apytikslį atitikmenį.

      Jei TRUE arba praleista, apytikslė Tai reiškia, kad jei nerandama tikslaus atitikmens, jūsų Hlookup formulė atliks netikslų atitikmenį ir grąžins kitą didžiausią reikšmę, kuri yra mažesnė už lookup_value.

      Jei FALSE, tik tikslus atitikimas Jei nė viena nurodytos eilutės reikšmė tiksliai neatitinka paieškos reikšmės, HLOOKUP išmeta klaidą #N/A.

    Kad būtų lengviau suprasti, galite išversti "Excel" HLOOKUP sintaksę:

    HLOOKUP( lookup_value , table_array , row_index_num , [range_lookup])

    į įprastą anglų kalbą:

    HLOOKUP( ieškoti šios vertės , šioje lentelėje , grąžinti šios eilutės reikšmę , [grąžinti apytikslį arba tikslų atitikmenį])

    Kad pamatytumėte, kaip tai veikia praktiškai, pateikime paprastą Hlookup pavyzdį. Tarkime, kad turite lentelę su pagrindine informacija apie mūsų Saulės sistemos planetas (žr. toliau pateiktą ekrano nuotrauką). Norite, kad formulė grąžintų planetos, kurios pavadinimas įvestas ląstelėje B5, skersmenį.

    Savo Hlookup formulėje naudosime šiuos argumentus:

    • Lookup_value yra B5 - ląstelė, kurioje yra ieškomos planetos pavadinimas.
    • Table_array yra B2:I3 - lentelė, kurioje formulė ieškos vertės.
    • Row_index_num yra 2, nes Diameter yra 2-oji lentelės eilutė.
    • Range_lookup Kadangi pirmoji mūsų lentelės eilutė nėra surūšiuota nuo A iki Z, galime ieškoti tik pagal tikslią atitiktį, kuri šiame pavyzdyje veikia puikiai.

    Dabar sudėjus argumentus gaunama tokia formulė:

    =VLOOKUP(40, A2:B15,2)

    3 dalykai, kuriuos turėtumėte žinoti apie "Excel" funkciją HLOOKUP

    Kai "Excel" programoje atliekate horizontalią paiešką, prisiminkite šiuos faktus:

    1. Funkcija HLOOKUP gali atlikti paiešką tik viršutinė eilutė table_array . Jei reikia ieškoti kur nors kitur, apsvarstykite galimybę naudoti indekso / atitikmens formulę.
    2. HLOOKUP programoje "Excel" yra Atskirų raidžių , ji neskiria didžiųjų ir mažųjų raidžių.
    3. Jei range_lookup nustatoma TRUE arba praleidžiama ( apytikslė sutampa), pirmosios eilutės reikšmės table_array turi būti surūšiuoti pagal didėjančia tvarka (nuo A iki Z) iš kairės į dešinę.

    Kuo skiriasi VLOOKUP ir HLOOKUP "Excel" programoje?

    Kaip jau žinote, abi funkcijos VLOOKUP ir HLOOKUP ieško ieškomos reikšmės. Skirtumas yra tas, kaip atliekama paieška. Kaip tikriausiai pastebėjote, funkcijų pavadinimai skiriasi tik pirmąja raide - "H" reiškia horizontalią, o "V" - vertikalią.

    Taigi, ieškodami naudojate VLOOKUP funkciją. vertikalus sąrašus, kai jūsų paieškos reikšmės yra stulpelyje, esančiame į kairę nuo norimų rasti duomenų.

    Funkcija HLOOKUP atlieka horizontali paieška - ieškoma paieškos reikšmės viršutinėje lentelės eilutėje ir grąžinama reikšmė, esanti tame pačiame stulpelyje nurodytu eilučių skaičiumi žemiau.

    Toliau pateiktame paveikslėlyje parodytas "Excel" formulių "Vlookup" ir "Hlookup" skirtumas:

    Kaip naudoti HLOOKUP programoje "Excel" - formulės pavyzdžiai

    Dabar, kai HLOOKUP funkcija jums jau atrodo šiek tiek geriau pažįstama, aptarkime dar keletą formulės pavyzdžių, kad įtvirtintume žinias.

    Horizontali paieška su apytiksliu ir tiksliu atitikimu

    Kaip jau žinote, "Excel" funkcija HLOOKUP gali atlikti paiešką su tiksliu ir netiksliu atitikmeniu, priklausomai nuo to, kokia reikšmė pateikiama į range_lookup argumentas:

    • TRUE arba praleista - apytikslė rungtynės
    • FALSE - tiksliai rungtynės

    Atminkite, kad nors sakome "apytikslis atitikmuo", bet Hlookup formulėje pirmiausia ieškoma tikslaus atitikmens. Tačiau nustačius paskutinį argumentą FALSE, formulė grąžins apytikslį atitikmenį (artimiausią reikšmę, kuri yra mažesnė už ieškomąją reikšmę), jei tikslaus atitikmens nerandama; šiuo atveju TRUE arba praleistas argumentas grąžina #N/A klaidą.

    Norėdami geriau iliustruoti šį dalyką, panagrinėkite šiuos HLOOKUP pavyzdžius.

    HLOOKUP su apytiksliu atitikimu

    Tarkime, kad 2 eilutėje (B2:I2) yra planetų sąrašas, o 1 eilutėje (B1:I1) - jų temperatūra. Norite sužinoti, kurios planetos temperatūra yra tam tikra, įvesta į B4 langelį.

    Negalite pasikliauti, kad jūsų naudotojai tiksliai žino paieškos temperatūrą, todėl tikslinga grąžinti artimiausias atitikmuo jei tiksli vertė nerandama.

    Pavyzdžiui, norėdami sužinoti planetą, kurios vidutinė temperatūra yra apie -340 °F, naudokite šią formulę ( range_lookup nustatomas į TRUE arba praleidžiamas, kaip šiame pavyzdyje):

    =HLOOKUP(B4, B1:I2, 2)

    Nepamirškite, kad norint apytikslio atitikimo, reikia surūšiuoti viršutinės eilutės reikšmes nuo mažiausios iki didžiausios arba nuo A iki Z, kitaip jūsų "Hlookup" formulė gali duoti neteisingą rezultatą.

    Kaip matote toliau pateiktoje ekrano kopijoje, mūsų formulė grąžina Uranas , viena šalčiausių Saulės sistemos planetų, kurioje vidutinė temperatūra -346 laipsnių pagal Farenheitą.

    HLOOKUP su tiksliu atitikimu

    Jei tiksliai žinote paieškos reikšmę, galite nustatyti, kad paskutinis HLOOKUP parametras būtų FALSE:

    =HLOOKUP(B4, B1:I2, 2, FALSE)

    Viena vertus, apytikslio atitikimo Hlookup yra patogesnis naudoti, nes nereikia rūšiuoti duomenų pirmoje eilutėje. Kita vertus, neradus tikslaus atitikimo, grąžinama klaida #N/A.

    Patarimas. Nenorėdami gąsdinti naudotojų N/A klaidomis, galite įterpti savo Hlookup formulę į IFERROR ir rodyti savo pranešimą, pvz:

    =IFERROR(HLOOKUP(B4, B1:I2, 2, FALSE), "Atsiprašome, nieko nerasta")

    Kaip atlikti HLOOKUP iš kitos darbalapio ar sąsiuvinio

    Apskritai h-lookup iš kito lapo ar kito sąsiuvinio reiškia ne ką kitą, o išorinių nuorodų pateikimą į jūsų HLOOKUP formulę.

    Jei norite ištraukti atitinkančius duomenis iš skirtingas darbalapis , nurodomas lapo pavadinimas, po kurio rašomas šauktukas. Pavyzdžiui:

    =HLOOKUP(B$1, Diameters!$B$1:$I$2,2,FALSE)

    Jei darbalapio pavadinime yra erdvės arba ne abėcėlės ženklai , įrašykite pavadinimą viengubomis kabutėmis, pvz., taip:

    =HLOOKUP(B$1, 'Planetos skersmuo'!$B$1:$I$2,2,FALSE)

    Pateikiant nuorodas kitas sąsiuvinis , įrašykite laužtiniuose skliaustuose esantį sąsiuvinio pavadinimą:

    =HLOOKUP(B$1, [Book1.xlsx]Diameters!$B$1:$I$2, 2, FALSE)

    Jei duomenis traukiate iš uždaryto sąsiuvinio, reikia nurodyti visą kelią:

    =HLOOKUP(B$1, 'D:\Reportai\[Book1.xlsx]Diametrai'!$B$1:$I$2, 2, FALSE)

    Patarimas. Užuot į formulę rankiniu būdu įvedę sąsiuvinio ir darbalapio pavadinimus, galite pasirinkti kito lapo ląsteles ir "Excel" automatiškai pridės išorinę nuorodą į jūsų formulę.

    "Excel" HLOOKUP su daliniu atitikimu (pakaitiniai simboliai)

    Kaip ir VLOOKUP atveju, "Excel" funkcija HLOOKUP leidžia naudoti šiuos pakaitinius simbolius lookup_value argumentas:

    • Klausimo ženklas (?), kad atitiktų bet kurį vieną simbolį
    • Žvaigždutė (*), kad atitiktų bet kokią simbolių seką

    Pakaitiniai simboliai praverčia, kai norite iš duomenų bazės ištraukti informaciją pagal tam tikrą tekstą, kuris yra paieškos langelio turinio dalis.

    Pavyzdžiui, 1 eilutėje turite klientų vardų sąrašą, o 2 eilutėje - užsakymo ID. Norite rasti konkretaus kliento užsakymo ID, tačiau negalite tiksliai prisiminti kliento vardo, nors prisimenate, kad jis prasideda žodžiu "ace".

    Darant prielaidą, kad jūsų duomenys yra ląstelėse B1:I2 ( table_array) o užsakymo numeriai - 2 eilutėje ( row_index_num ), formulė yra tokia:

    =HLOOKUP("ace*", B1:I2, 2, FALSE)

    Kad formulė būtų lankstesnė, paieškos reikšmę galite įvesti į specialią ląstelę, pavyzdžiui, B4, ir sujungti tą ląstelę su pakaitiniu simboliu, pvz., taip:

    =HLOOKUP(B4& "*", B1:I2, 2, FALSE)

    Pastabos.

    • Kad HLOOKUP formulė su pakaitiniu ženklu veiktų teisingai, reikia, kad range_lookup argumentą reikia nustatyti į FALSE.
    • Jei table_array yra daugiau nei viena reikšmė, atitinkanti pakaitinio simbolio kriterijus, grąžinama pirmoji rasta reikšmė.

    Absoliučios ir santykinės ląstelių nuorodos formulėse HLOOKUP

    Jei formulę rašote vienai ląstelei, galite nesirūpinti, kaip tinkamai naudoti santykines ir absoliučiąsias ląstelių nuorodas - tinka bet kuri iš jų.

    Formulės kopijavimas į kelias ląsteles yra kita istorija. Iš esmės:

    • Visada turėtumėte nustatyti table_array naudodami absoliučias ląstelių nuorodas su dolerio ženklu ($), pavyzdžiui, $B$1:$I$2.
    • Paprastai lookup_value nuoroda yra santykinė arba mišri, priklausomai nuo jūsų verslo logikos.

    Kad būtų aiškiau, atidžiau pažvelkime į formulę, pagal kurią duomenys perkeliami iš kito lapo:

    =HLOOKUP(B$1, Diameters!$B$1:$I$2,2,FALSE)

    Pirmiau pateiktoje formulėje naudojame absoliutus ląstelių nuorodos ($B$1:$I$2) table_array nes jis turėtų išlikti pastovus, kai formulė kopijuojama į kitas ląsteles.

    Tinklalapiui lookup_value (B$1), naudojame a mišrus nuoroda, santykinis stulpelis ir absoliuti eilutė, nes mūsų paieškos reikšmės (planetų pavadinimai) yra toje pačioje eilutėje (1 eilutė), bet skirtinguose stulpeliuose (nuo B iki I), o stulpelio nuoroda turėtų būti keičiama pagal santykinę ląstelės, į kurią nukopijuota formulė, padėtį.

    Dėl sumaniai naudojamų ląstelių nuorodų mūsų "Hlookup" formulė puikiai veikia keliose ląstelėse:

    INDEX/MATCH - galingesnė "Excel" HLOOKUP alternatyva

    Kaip jau žinote, "Excel" funkcija HLOOKUP turi nemažai apribojimų, iš kurių svarbiausi yra šie: negalima ieškoti bet kur, išskyrus pačią viršutinę eilutę, ir būtina rūšiuoti reikšmes, kai ieškoma naudojant apytikslio atitikmens funkciją.

    Laimei, "Excel" programoje yra galingesnė ir universalesnė "Vlookup" ir "Hlookup" alternatyva - INDEX ir MATCH funkcijų sąsaja, kurią sudaro ši bendra formulė:

    INDEKSAS ( iš kur grąžinti vertę , MATCH ( paieškos vertė , kur ieškoti , 0))

    Darant prielaidą, kad jūsų paieškos reikšmė yra ląstelėje B7, ieškote atitikmens 2 eilutėje (B2:I2) ir norite grąžinti reikšmę iš 1 eilutės (B1:I1), formulė yra tokia:

    =INDEX(B1:I1,MATCH(B7,B2:I2,0))

    Toliau pateiktoje ekrano kopijoje matote 2 "Hlookup" formules, kurios ieško pirmoje ir antroje eilutėse, ir abiem atvejais INDEX MATCH veikia vienodai gerai.

    Išsamų formulės logikos paaiškinimą ir daugiau pavyzdžių rasite straipsnyje INDEX MATCH - geresnė VLOOKUP alternatyva.

    Kaip "Excel" programoje atlikti h-paieškos paiešką pagal mažąsias ir didžiąsias raides

    Kaip minėta šios pamokos pradžioje, "Excel" funkcija HLOOKUP neatsižvelgia į mažąsias ir didžiąsias raides. Tais atvejais, kai simbolių raidės yra svarbios, galite naudoti funkciją EXACT, kuri tiksliai lygina ląsteles, ir įdėti ją į ankstesniame pavyzdyje aptartą formulę INDEX MATCH:

    INDEKSAS ( eilutę, kad būtų grąžinta reikšmė iš , MATCH(TRUE, EXACT( eilutė, kurioje reikia ieškoti , paieškos vertė) , 0))

    Darant prielaidą, kad paieškos vertė yra ląstelėje B4, paieškos diapazonas yra B1:I1, o grąžinimo diapazonas yra B2:I2, formulė atrodo taip:

    =INDEX(B2:I2, MATCH(TRUE, EXACT(B1:I1,B4),0))

    Svarbi pastaba! Tai yra masyvo formulė, todėl, norėdami ją užbaigti, turėtumėte paspausti Ctrl + Shift + Enter.

    Pirmiau pateiktame pavyzdyje parodytas mano mėgstamiausias, bet ne vienintelis galimas būdas atlikti "Excel" horizontaliąją peržvalgą. Jei jums įdomu sužinoti kitus būdus, peržiūrėkite šią pamoką: 4 būdai, kaip atlikti "Excel" horizontaliąją peržvalgą. Manau, kad neturėsite jokių problemų pertvarkydami "Excel" horizontaliosios peržvalgos formules.

    10 svarbiausių priežasčių, kodėl "Excel" HLOOKUP neveikia

    Dabar jau žinote, kad "Hlookup" yra labai naudinga ir galinga "Excel" paieškos funkcija. Ji taip pat yra sudėtinga, o dėl daugybės jos ypatumų #N/A, #VALUE arba #REF klaidos yra dažnas reiškinys. Jei jūsų HLOOKUP formulė neveikia tinkamai, greičiausiai taip yra dėl vienos iš toliau nurodytų priežasčių.

    1. HLOOKUP programoje "Excel" negali žiūrėti aukščiau savęs

    Net jei pamiršite visas kitas detales apie horizontalią paiešką "Excel" programoje, prisiminkite šią esminę informaciją - "Hlookup" gali ieškoti tik viršutinė eilutė Jei jūsų paieškos reikšmės yra kitoje eilutėje, grąžinama klaida N/A. Norėdami įveikti šį apribojimą, naudokite INDEX MATCH formulę.

    2. Apytikslė atitiktis ir tiksli atitiktis

    Atlikdami horizontalią (Hlookup) arba vertikalią (Vlookup) paiešką "Excel" programoje, dažniausiai ieškote konkretaus dalyko, todėl jums reikia tikslaus atitikmens. Kai ieškote su apytiksliu atitikmeniu ( range_lookup nustatyta TRUE arba praleista), nepamirškite pirmosios eilutės reikšmes rūšiuoti didėjančia tvarka.

    Daugiau informacijos ir formulių pavyzdžių rasite skyriuje "Excel Hlookup" su apytiksliu ir tiksliu atitikimu.

    3. Kopijuojant formulę pasikeičia lentelės masyvo nuoroda

    Naudodami kelis HLOOKUP, kad gautumėte informaciją apie paieškos verčių eilutę, turite užrakinti table_array nuoroda, kaip parodyta straipsnyje Absoliučios ir santykinės ląstelių nuorodos Hlookup formulėse.

    4. Naujos eilutės įterpimas arba ištrynimas

    Norėdami suprasti, kodėl naujos eilutės įterpimas gali pažeisti "Hlookup" formulę, prisiminkite, kaip "Excel" HLOOKUP gauna informaciją apie paieškos vertę - pagal nurodytą eilutės indekso numerį.

    Tarkime, norite gauti pardavimo duomenis pagal produkto ID. Šie duomenys yra 4 eilutėje, todėl įveskite 4 į row_index_num argumentas. Tačiau įterpus naują eilutę, ji tampa 5 eilute... ir jūsų "Hlookup" nebeveikia. Tokia pati problema gali kilti ir šalinant esamą eilutę iš lentelės.

    Išeitis - arba užrakinti lentelę, kad naudotojai negalėtų įterpti naujų eilučių, arba vietoj "Hlookup" naudoti INDEX & MATCH. Indeksų ir atitikmenų formulėse eilutes, kurių reikia ieškoti ir iš kurių reikia grąžinti reikšmes, nurodote kaip diapazono nuorodas, o ne indekso numerius, ir "Excel" yra pakankamai protinga, kad šias nuorodas pakoreguotų skrydžio metu. Taigi galite ištrinti arba įterpti tiek stulpelių ir eilučių, kiek norite, benerimauti dėl kiekvienos darbalapyje esančios formulės atnaujinimo.

    5. Lentelės dublikatai

    "Excel" funkcija HLOOKUP gali grąžinti tik vieną reikšmę, t. y. pirmąją lentelės reikšmę, atitinkančią paieškos reikšmę.

    Jei lentelėje yra keli vienodi įrašai, pasirinkite vieną iš toliau nurodytų sprendimų, kuris geriausiai atitinka jūsų poreikius:

    • pašalinkite dublikatus naudodami "Excel" priemones arba mūsų Dublikatų šalinimo programą
    • Jei duomenų rinkinyje reikia išsaugoti pasikartojančius įrašus, sukurkite PivotTable, kad galėtumėte sugrupuoti ir filtruoti duomenis taip, kaip norite.
    • Naudokite masyvo formulę, kad ištrauktumėte visas pasikartojančias reikšmes paieškos intervale.

    6. Papildomos vietos

    Kai akivaizdžiai teisinga "Hlookup" formulė grąžina daugybę #N/A klaidų, patikrinkite, ar jūsų lentelėje ir paieškos reikšmėje nėra papildomų tarpų. Galite greitai pašalinti pradinius, galinius ir perteklinius tarpinius tarpus naudodami "Excel TRIM" funkciją arba mūsų "Cell Cleaner" įrankį.

    7. Skaičiai, suformatuoti kaip tekstas

    Teksto eilutės, kurios atrodo kaip skaičiai, yra dar vienas "Excel" formulių kliuvinys. Išsamus šios problemos aprašymas ir galimi sprendimai aprašyti straipsnyje Kodėl "Excel" formulės gali nustoti veikti.

    8. Paieškos vertė viršija 255 simbolius

    Visos "Excel" paieškos funkcijos veikia tik tol, kol paieškos vertė neviršija 255 simbolių. Ilgesnė paieškos vertė sukelia #VALUE! klaidą. Kadangi INDEX /MATCH formulė neturi šio apribojimo, naudokite ją šiai kliūčiai įveikti.

    9. Nenurodytas visas paieškos sąsiuvinio kelias

    Jei atliekate h-lookup iš kito darbalapio, nepamirškite nurodyti viso kelio iki jo. Keletą formulės pavyzdžių rasite čia: Kaip atlikti h-lookup iš kito darbalapio ar darbalapio.

    10. Neteisingi argumentai

    Jau ne kartą buvo pabrėžta, kad HLOOKUP yra reikli funkcija, su kuria reikia elgtis labai atsargiai. Toliau pateikiamos kelios dažniausiai pasitaikančios klaidos, kurias sukelia neteisingų argumentų pateikimas:

    • Jei eilutės_indekso_numeris yra mažesnis nei 1, funkcija HLOOKUP grąžina klaidą #VALUE!.
    • Jei eilutės_indekso_skaičius yra didesnis už eilučių skaičių lentelės_dėžutėje, grąžinama #REF! klaida.
    • Jei ieškote su apytiksliu atitikimu ir jūsų paieškos_vertė yra mažesnė už mažiausią vertę pirmoje lentelės_rinkinio eilutėje, grąžinama klaida #N/A.

    Na, štai kaip naudoti HLOOKUP programoje "Excel". Tikiuosi, kad ši informacija jums bus naudinga. Dėkoju, kad perskaitėte, ir tikiuosi, kad kitą savaitę susitiksime mūsų tinklaraštyje!

    Atsisiųsti praktikos sąsiuvinį

    "Excel" HLOOKUP formulės pavyzdžiai

    Michaelas Brownas yra atsidavęs technologijų entuziastas, mėgstantis supaprastinti sudėtingus procesus naudojant programinės įrangos įrankius. Turėdamas daugiau nei dešimtmetį patirtį technologijų pramonėje, jis patobulino savo įgūdžius „Microsoft Excel“ ir „Outlook“, taip pat „Google“ skaičiuoklėse ir dokumentuose. Michaelio tinklaraštis skirtas dalytis savo žiniomis ir patirtimi su kitais, jame pateikiami lengvai įgyvendinami patarimai ir vadovėliai, kaip pagerinti produktyvumą ir efektyvumą. Nesvarbu, ar esate patyręs profesionalas, ar pradedantysis, Michaelo tinklaraštyje rasite vertingų įžvalgų ir praktinių patarimų, kaip išnaudoti visas šių pagrindinių programinės įrangos įrankių galimybes.