Funcția Excel HLOOKUP cu exemple de formule

  • Imparte Asta
Michael Brown

După cum probabil știți, Microsoft Excel are trei funcții pentru a căuta o valoare - LOOKUP, VLOOKUP și HLOOKUP - și se pare că acestea îi încurcă cel mai mult pe utilizatori. În acest tutorial, ne vom concentra pe specificul funcției Excel HLOOKUP și vom discuta câteva exemple de formule care vă vor ajuta să o utilizați în Excel cât mai eficient.

    Ce este HLOOKUP în Excel?

    Funcția Excel HLOOKUP este concepută pentru căutare orizontală Mai exact, caută o anumită valoare în primul rând al tabelului și returnează o altă valoare din aceeași coloană de pe un rând pe care îl specificați.

    Funcția HLOOKUP este disponibilă în toate versiunile Microsoft Excel 2016, Excel 2013, Excel 2010, Excel 2007 și versiunile inferioare.

    Sintaxa și utilizările Excel HLOOKUP

    Funcția HLOOKUP din Excel are următoarele argumente:

    HLOOKUP(lookup_value, table_array, row_index_num, [range_lookup])
    • Valoare_de_consultare (obligatoriu) - valoarea care trebuie căutată. Poate fi o referință de celulă, o valoare numerică sau un șir de text.
    • Tabel_array (obligatoriu) - două sau mai multe rânduri de date în care este căutată valoarea de căutare. Poate fi un interval obișnuit, un interval numit sau un tabel. Valorile de căutare trebuie să fie întotdeauna localizate în primul rând de tabel_array .
    • Număr_index_ rând (obligatoriu) - numărul rândului din tabela_array din care trebuie returnată valoarea. De exemplu, pentru a returna valoarea corespunzătoare din al doilea rând, setați row_index_num la 2, și așa mai departe.
    • Range_lookup (opțional) - o valoare logică (booleană) care indică lui HLOOKUP să efectueze o căutare cu potrivire exactă sau aproximativă.

      În cazul în care este TRUE sau omis, un aproximativ Ceea ce înseamnă că, dacă nu se găsește o potrivire exactă, formula Hlookup va face o potrivire neexactă și va returna următoarea valoare cea mai mare care este mai mică decât valoarea_de_consultare.

      În cazul în care este FALSE, numai un potrivire exactă În cazul în care nicio valoare dintr-un rând specificat nu corespunde exact valorii de căutare, HLOOKUP aruncă eroarea #N/A.

    Pentru a face lucrurile mai ușor de înțeles, puteți traduce sintaxa HLOOKUP din Excel:

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

    în limba engleză normală:

    HLOOKUP( căutați această valoare , în acest tabel , returnează o valoare din acest rând , [returnează o potrivire aproximativă sau exactă])

    Pentru a vedea cum funcționează în practică, să facem un exemplu simplu de Hlookup. Să presupunem că aveți un tabel cu câteva informații de bază despre planetele sistemului nostru solar (a se vedea captura de ecran de mai jos). Ceea ce doriți este o formulă care să returneze diametrul planetei al cărei nume este introdus în celula B5.

    În formula noastră Hlookup, vom folosi următoarele argumente:

    • Valoare_de_consultare este B5 - celula care conține numele planetei pe care doriți să o găsiți.
    • Tabel_array este B2:I3 - tabelul în care formula va căuta valoarea.
    • Număr_index_ rând este 2, deoarece Diameter este al doilea rând din tabel.
    • Range_lookup este FALSE. Deoarece primul rând al tabelului nostru nu este sortat de la A la Z, putem căuta doar cu potrivire exactă, ceea ce funcționează foarte bine în acest exemplu.

    Acum puneți argumentele împreună și obțineți următoarea formulă:

    =VLOOKUP(40, A2:B15,2)

    3 lucruri pe care ar trebui să le știți despre funcția Excel HLOOKUP

    Ori de câte ori efectuați o căutare orizontală în Excel, vă rugăm să vă amintiți următoarele fapte:

    1. Funcția HLOOKUP poate efectua căutări numai în rândul cel mai de sus de tabel_array Dacă aveți nevoie să căutați în altă parte, luați în considerare utilizarea unei formule de indexare / potrivire.
    2. HLOOKUP în Excel este nu ține cont de majuscule și minuscule , nu face distincție între majuscule și minuscule.
    3. Dacă range_lookup este setat la TRUE sau omis ( aproximativ match), valorile din primul rând din tabel_array trebuie să fie sortate în ordine crescătoare (A-Z) de la stânga la dreapta.

    Care este diferența dintre VLOOKUP și HLOOKUP în Excel?

    După cum știți deja, ambele funcții VLOOKUP și HLOOKUP caută o valoare de căutare. Diferența constă în modul în care se efectuează căutarea. După cum probabil ați observat, numele funcțiilor diferă doar prin prima literă - "H" înseamnă orizontal, iar "V" înseamnă vertical.

    Prin urmare, utilizați funcția VLOOKUP pentru a căuta este vertical atunci când valorile de căutare se află într-o coloană situată în stânga datelor pe care doriți să le găsiți.

    Funcția HLOOKUP efectuează o căutare orizontală - caută o valoare de căutare în rândul cel mai de sus al tabelului și returnează o valoare situată la un număr specificat de rânduri mai jos, în aceeași coloană.

    Următoarea imagine demonstrează diferența dintre formulele Vlookup și Hlookup în Excel:

    Cum se utilizează HLOOKUP în Excel - exemple de formule

    Acum că funcția HLOOKUP a început să vă fie mai familiară, să discutăm câteva exemple de formule pentru a consolida cunoștințele.

    Căutare orizontală cu potrivire aproximativă și exactă

    După cum știți deja, funcția HLOOKUP din Excel poate efectua o căutare cu potrivire exactă și neexactă, în funcție de valoarea furnizată la funcția range_lookup argument:

    • TRUE sau omis - aproximativ meci
    • FALSE - exact meci

    Vă rugăm să rețineți că, deși spunem "potrivire aproximativă", orice formulă Hlookup caută în primul rând o potrivire exactă. Dar setarea ultimului argument la FALSE permite formulei să returneze o potrivire aproximativă (cea mai apropiată valoare care este mai mică decât valoarea de căutare) în cazul în care nu se găsește o potrivire exactă; TRUE sau omis returnează eroarea #N/A în acest caz.

    Pentru a ilustra mai bine acest aspect, luați în considerare următoarele exemple HLOOKUP.

    HLOOKUP cu potrivire aproximativă

    Să presupunem că aveți o listă de planete în rândul 2 (B2:I2) și temperaturile lor în rândul 1 (B1:I1). Doriți să aflați care planetă are o anumită temperatură care este introdusă în celula B4.

    Nu vă puteți baza pe faptul că utilizatorii dvs. cunosc exact temperatura de căutare, așa că este logic să returnați un cel mai apropiat meci în cazul în care nu se găsește o valoare exactă.

    De exemplu, pentru a afla planeta a cărei temperatură medie este de aproximativ -340 °F, utilizați următoarea formulă ( range_lookup setat la TRUE sau omis, ca în acest exemplu):

    =HLOOKUP(B4, B1:I2, 2)

    Vă rugăm să rețineți că o potrivire aproximativă necesită sortarea valorilor din rândul de sus de la cel mai mic la cel mai mare sau de la A la Z, altfel formula Hlookup poate returna un rezultat greșit.

    După cum puteți vedea în captura de ecran de mai jos, formula noastră returnează Uranus , una dintre cele mai reci planete din Sistemul Solar, menținând o medie de -346 grade Fahrenheit.

    HLOOKUP cu potrivire exactă

    Dacă cunoașteți exact valoarea de căutare, puteți seta ultimul parametru al HLOOKUP la FALSE:

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

    Pe de o parte, un Hlookup cu potrivire aproximativă este mai ușor de utilizat, deoarece nu necesită sortarea datelor în primul rând. Pe de altă parte, dacă nu se găsește o potrivire exactă, se va returna o eroare #N/A.

    Sfat: Pentru a nu vă speria utilizatorii prin erori N/A, puteți încorpora formula Hlookup în IFERROR și afișa propriul mesaj, de exemplu:

    =IFERROR(HLOOKUP(B4, B1:I2, 2, FALSE), "Ne pare rău, nu a fost găsit nimic")

    Cum se face HLOOKUP dintr-o altă foaie de calcul sau registru de lucru

    În general, h-lookup dintr-o altă foaie sau dintr-un registru de lucru diferit nu înseamnă nimic altceva decât furnizarea de referințe externe la formula HLOOKUP.

    Pentru a extrage datele corespunzătoare dintr-un foaie de lucru diferită , specificați numele foii urmat de un semn de exclamare. De exemplu:

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

    Dacă numele foii de lucru conține spații sau caractere nealfabetice , includeți numele între ghilimele simple, astfel:

    =HLOOKUP(B$1, 'Diametre planete'!$B$1:$I$2,2,FALSE)

    Atunci când se face referire la un alt registru de lucru , includeți numele cărții de lucru închis între paranteze pătrate:

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

    Dacă extrageți date dintr-un registru de lucru închis, trebuie specificată întreaga cale de acces:

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

    Sfat: În loc să tastați manual numele registrului de lucru și al foii de lucru în formulă, puteți selecta celulele dintr-o altă foaie, iar Excel va adăuga automat o referință externă la formula dvs.

    Excel HLOOKUP cu potrivire parțială (caractere wildcard)

    Ca și în cazul VLOOKUP, funcția HLOOKUP a Excel permite utilizarea următoarelor caractere wildcard în lookup_value argument:

    • Semn de întrebare (?) pentru a se potrivi cu orice caracter unic
    • Asterisc (*) pentru a se potrivi cu orice secvență de caractere

    Caracterele wildcard sunt utile atunci când doriți să extrageți informații dintr-o bază de date pe baza unui text care face parte din conținutul celulei de căutare.

    De exemplu, aveți o listă de nume de clienți în rândul 1 și ID-uri de comandă în rândul 2. Doriți să găsiți ID-ul de comandă pentru un anumit client, dar nu vă puteți aminti exact numele clientului, deși vă amintiți că începe cu "as".

    Presupunând că datele dvs. se află în celulele B1:I2 ( tabel_array) iar numerele de ordine se află în rândul 2 ( număr_index_ rând ), formula este următoarea:

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

    Pentru ca formula să fie mai flexibilă, puteți introduce valoarea de căutare într-o celulă specială, de exemplu B4, și să concatenați acea celulă cu caracterul wildcard, astfel:

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

    Note.

    • Pentru ca o formulă HLOOKUP cu wildcard să funcționeze corect, trebuie să se utilizeze range_lookup trebuie să fie setat la FALSE.
    • Dacă tabel_array conține mai mult de o valoare care îndeplinește criteriile wildcard, se returnează prima valoare găsită.

    Referințe absolute și relative la celule în formulele HLOOKUP

    Dacă scrieți o formulă pentru o singură celulă, este posibil să nu vă faceți griji cu privire la utilizarea corectă a referințelor relative și absolute la celule, oricare dintre ele este suficientă.

    Copierea unei formule în mai multe celule este o altă poveste. În esență:

    • Ar trebui să reparați întotdeauna tabel_array utilizând referințe absolute de celule cu semnul dolarului ($), cum ar fi $B$1:$I$2.
    • În mod obișnuit, se utilizează lookup_value este relativă sau mixtă, în funcție de logica dvs. de afaceri.

    Pentru ca lucrurile să fie mai clare, să analizăm mai atent formula care extrage datele dintr-o altă foaie:

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

    În formula de mai sus, folosim absolut referințe de celule ($B$1:$I$2) în tabel_array deoarece ar trebui să rămână constantă atunci când formula este copiată în alte celule.

    Pentru lookup_value (B$1), folosim a mixt referință, coloană relativă și rând absolut, deoarece valorile noastre de căutare (nume de planete) se află pe același rând (rândul 1), dar în coloane diferite (de la B la I), iar referința coloanei trebuie să se schimbe în funcție de poziția relativă a celulei în care este copiată formula.

    Datorită utilizării inteligente a referințelor de celule, formula noastră Hlookup funcționează perfect pentru mai multe celule:

    INDEX/MATCH - o alternativă mai puternică la Excel HLOOKUP

    După cum știți deja, funcția HLOOKUP din Excel are o serie de limitări, cele mai importante fiind incapacitatea de a căuta oriunde, cu excepția celui mai de sus rând și necesitatea de a sorta valorile atunci când se caută cu potrivire aproximativă.

    Din fericire, există o alternativă mai puternică și mai versatilă la Vlookup și Hlookup în Excel - legătura dintre funcțiile INDEX și MATCH, care se rezumă la această formulă generică:

    INDEX ( unde să returneze o valoare din , MATCH ( valoarea de căutare , unde să caute , 0))

    Presupunând că valoarea de căutare se află în celula B7, căutați o potrivire în rândul 2 (B2:I2) și doriți să returnați o valoare din rândul 1 (B1:I1), formula este următoarea:

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

    În captura de ecran de mai jos, puteți vedea 2 formule Hlookup care caută în primul și al doilea rând, iar în ambele cazuri INDEX MATCH funcționează la fel de bine.

    Pentru o explicație detaliată a logicii formulei și pentru mai multe exemple, consultați INDEX MATCH ca o alternativă mai bună la VLOOKUP.

    Cum să faceți h-lookup sensibil la majuscule și minuscule în Excel

    După cum s-a menționat la începutul acestui tutorial, funcția Excel HLOOKUP nu ține cont de majuscule și minuscule. În situațiile în care contează majusculele caracterelor, puteți lua funcția EXACT care compară celulele exact și o puteți plasa în interiorul formulei INDEX MATCH discutată în exemplul anterior:

    INDEX ( rând pentru a returna o valoare din , MATCH(TRUE, EXACT( rândul în care se caută , valoare de căutare) , 0))

    Presupunând că valoarea de căutare se află în celula B4, intervalul de căutare este B1:I1, iar intervalul de returnare este B2:I2, formula are următoarea formă:

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

    Notă importantă! Este o formulă de matrice și, prin urmare, trebuie să apăsați Ctrl + Shift + Enter pentru a o completa.

    Exemplul de mai sus demonstrează modul meu favorit, dar nu singurul posibil de a face un Hlookup cu diferențiere de majuscule și minuscule în Excel. Dacă sunteți curioși să cunoașteți și alte tehnici, vă rog să consultați acest tutorial: 4 moduri de a face un Vlookup cu diferențiere de majuscule și minuscule în Excel. Cred că nu veți avea nicio problemă cu reconstruirea formulelor Vlookup pentru o căutare orizontală.

    Top 10 motive pentru care Excel HLOOKUP nu funcționează

    Până acum știi deja că Hlookup este o funcție de căutare foarte utilă și puternică în Excel. Este, de asemenea, una complicată și, din cauza numeroaselor sale specificități, erorile #N/A, #VALUE sau #REF sunt o apariție comună. Dacă formula HLOOKUP nu funcționează corect, cel mai probabil se datorează unuia dintre următoarele motive.

    1. HLOOKUP în Excel nu poate să se uite deasupra lui însuși

    Chiar dacă uitați toate celelalte detalii despre căutarea orizontală în Excel, vă rugăm să vă amintiți acest lucru esențial - Hlookup poate căuta numai în rândul cel mai de sus În cazul în care valorile de căutare se află pe un alt rând, se trimite o eroare N/A. Pentru a depăși această limitare, utilizați o formulă INDEX MATCH.

    2. Potrivire aproximativă vs. potrivire exactă

    Atunci când efectuați o căutare în Excel, fie pe orizontală (Hlookup), fie pe verticală (Vlookup), în majoritatea cazurilor căutați un anumit lucru și, prin urmare, aveți nevoie de o potrivire exactă. Atunci când căutați cu potrivire aproximativă ( range_lookup setat la TRUE sau omis), nu uitați să sortați valorile din primul rând în ordine crescătoare.

    Pentru mai multe informații și exemple de formule, vă rugăm să consultați Excel Hlookup cu potrivire aproximativă și exactă.

    3. Referința tabloului array se modifică la copierea formulei

    Atunci când se utilizează mai multe HLOOKUP-uri pentru a prelua informații despre un rând de valori de căutare, trebuie să blocați tabel_array așa cum se arată în Referințe absolute și relative la celule în formulele Hlookup.

    4. Inserarea sau ștergerea unui nou rând

    Pentru a înțelege de ce inserarea unui nou rând poate întrerupe o formulă Hlookup, amintiți-vă cum obține Excel HLOOKUP informații despre valoarea de căutare - pe baza numărului de index al rândului pe care îl specificați.

    Să presupunem că doriți să obțineți cifrele de vânzări pe baza ID-ului produsului. Aceste cifre se află în rândul 4, așa că introduceți 4 în câmpul număr_index_ rând Dar, după ce a fost introdus un nou rând, acesta devine rândul 5... și Hlookup nu mai funcționează. Aceeași problemă poate apărea și la ștergerea unui rând existent din tabel.

    Soluția este fie să blocați tabelul pentru a împiedica utilizatorii să introducă rânduri noi, fie să utilizați INDEX & MATCH în loc de Hlookup. În formulele Index/Match, specificați rândurile de căutat și de returnat valori ca referințe de interval, nu numere de index, iar Excel este suficient de inteligent pentru a ajusta aceste referințe din mers. Astfel, sunteți liber să ștergeți sau să introduceți câte coloane și rânduri doriți fărăsă vă faceți griji cu privire la actualizarea fiecărei formule din foaia de calcul.

    5. Duplicări în tabel

    Funcția HLOOKUP din Excel poate returna doar o singură valoare, care este prima valoare din tabel care se potrivește cu valoarea de căutare.

    Dacă există câteva înregistrări identice în tabel, alegeți una dintre următoarele soluții care se potrivește cel mai bine nevoilor dumneavoastră:

    • Eliminați duplicatele folosind mijloacele Excel sau aplicația noastră de eliminare a duplicatelor
    • În cazul în care înregistrările duplicate trebuie păstrate în setul de date, creați un tabel pivot pentru a grupa și filtra datele în modul dorit.
    • Utilizați o formulă de matrice pentru a extrage toate valorile duplicate din intervalul de căutare.

    6. Spații suplimentare

    Atunci când formula Hlookup, evident corectă, returnează o mulțime de erori #N/A, verificați tabelul și valoarea de căutare pentru spații suplimentare. Puteți elimina rapid spațiile de început, de sfârșit și excesul de spații intermediare utilizând funcția Excel TRIM sau instrumentul nostru Cell Cleaner.

    7. Numere formatate ca text

    Șirurile de text care arată ca niște numere reprezintă o altă piedică pentru formulele Excel. Descrierea detaliată a acestei probleme și soluțiile posibile sunt descrise în De ce pot înceta să funcționeze formulele Excel.

    8. Valoarea căutării depășește 255 de caractere

    Toate funcțiile de căutare din Excel funcționează numai atât timp cât valoarea de căutare are mai puțin de 255 de caractere. O valoare de căutare mai lungă duce la apariția erorii #VALUE! Deoarece formula INDEX /MATCH nu are această limitare, utilizați-o pentru a depăși acest obstacol.

    9. Nu este specificată calea completă către registrul de lucru de căutare

    Dacă efectuați h-lookup dintr-un alt registru de lucru, nu uitați să furnizați calea completă către acesta. Câteva exemple de formule pot fi găsite aici: Cum să efectuați Hlookup dintr-o altă foaie de calcul sau registru de lucru.

    10. Argumente greșite

    A fost deja subliniat de mai multe ori că HLOOKUP este o funcție solicitantă care trebuie tratată cu mare atenție. Mai jos sunt prezentate câteva dintre cele mai frecvente erori cauzate de furnizarea de argumente incorecte:

    • Dacă row_index_num este mai mic de 1, funcția HLOOKUP returnează eroarea #VALUE!.
    • Dacă row_index_num este mai mare decât numărul de rânduri din table_array, se returnează eroarea #REF!
    • Dacă efectuați o căutare cu potrivire aproximativă și valoarea de căutare este mai mică decât cea mai mică valoare din primul rând din tabelul_array, se trimite eroarea #N/A.

    Ei bine, acesta este modul de utilizare a HLOOKUP în Excel. Sperăm că veți găsi aceste informații utile. Vă mulțumesc pentru lectură și sper să ne vedem pe blogul nostru săptămâna viitoare!

    Descărcați caietul de practică

    Exemple de formule Excel HLOOKUP

    Michael Brown este un pasionat de tehnologie dedicat, cu o pasiune pentru simplificarea proceselor complexe folosind instrumente software. Cu mai mult de un deceniu de experiență în industria tehnologiei, el și-a perfecționat abilitățile în Microsoft Excel și Outlook, precum și în Google Sheets și Docs. Blogul lui Michael este dedicat împărtășirii cunoștințelor și experienței sale cu alții, oferind sfaturi și tutoriale ușor de urmat pentru îmbunătățirea productivității și eficienței. Indiferent dacă sunteți un profesionist experimentat sau un începător, blogul lui Michael oferă informații valoroase și sfaturi practice pentru a profita la maximum de aceste instrumente software esențiale.