Funkcja HLOOKUP w Excelu z przykładami formuł

  • Udostępnij To
Michael Brown

Jak zapewne wiesz, Microsoft Excel posiada trzy funkcje służące do wyszukiwania wartości - LOOKUP, VLOOKUP oraz HLOOKUP - i to one wydają się najbardziej mylić użytkowników. W tym poradniku skupimy się na specyfice funkcji HLOOKUP w Excelu oraz omówimy kilka przykładów formuł, które pomogą Ci najefektywniej wykorzystać ją w Excelu.

    Czym jest HLOOKUP w programie Excel?

    Funkcja HLOOKUP programu Excel jest przeznaczona do. przeglądanie poziome . Dokładniej, wyszukuje pewną wartość w pierwszym wierszu tabeli i zwraca inną wartość w tej samej kolumnie z wiersza, który określisz.

    Funkcja HLOOKUP jest dostępna we wszystkich wersjach programów Microsoft Excel 2016, Excel 2013, Excel 2010, Excel 2007 i niższych.

    Składnia i zastosowania HLOOKUP w programie Excel

    Funkcja HLOOKUP w Excelu ma następujące argumenty:

    HLOOKUP(lookup_value, table_array, row_index_num, [range_lookup])
    • Lookup_value (wymagane) - wartość do wyszukania, może to być odwołanie do komórki, wartość liczbowa lub ciąg tekstowy.
    • Tablica (wymagane) - dwa lub więcej wierszy danych, w których wyszukiwana jest wartość lookup. Może to być zwykły zakres, zakres nazwany lub tabela. Wartości lookup powinny zawsze znajdować się w pierwszy rząd z tablica .
    • Wiersz_index_num (wymagane) - numer wiersza w table_array, z którego ma być zwrócona wartość. Na przykład, aby zwrócić pasującą wartość z 2. wiersza, ustaw row_index_num na 2, i tak dalej.
    • Range_lookup (opcjonalne) - wartość logiczna (Boolean), która określa, czy HLOOKUP ma wyszukiwać z dokładnym czy przybliżonym dopasowaniem.

      Jeśli TRUE lub pominięty, to w tym samym czasie pojawi się przybliżony Oznacza to, że jeśli nie zostanie znalezione dokładne dopasowanie, formuła Hlookup wykona dopasowanie niedokładne i zwróci następną największą wartość, która jest mniejsza niż lookup_value.

      Jeśli FALSE, to tylko dokładna zgodność Jeśli żadna wartość w określonym wierszu nie pasuje dokładnie do wartości lookup, HLOOKUP wyrzuca błąd #N/A.

    Aby ułatwić zrozumienie, możesz przetłumaczyć składnię HLOOKUP programu Excel:

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

    na normalny angielski:

    HLOOKUP( poszukać tej wartości , w tej tabeli , zwróć wartość z tego wiersza , [zwróć dopasowanie przybliżone lub dokładne])

    Aby zobaczyć, jak to działa w praktyce, zróbmy prosty przykład Hlookup. Załóżmy, że masz tabelę z kilkoma podstawowymi informacjami o planetach naszego Układu Słonecznego (proszę zobaczyć zrzut ekranu poniżej). To, czego chcesz, to formuła, która zwraca średnicę planety, której nazwa jest wpisana w komórce B5.

    W naszej formule Hlookup będziemy używać następujących argumentów:

    • Lookup_value to B5 - komórka zawierająca nazwę planety, którą chcemy znaleźć.
    • Tablica to B2:I3 - tabela, w której formuła będzie szukać wartości.
    • Wiersz_index_num wynosi 2, ponieważ Średnica jest drugim wierszem w tabeli.
    • Range_lookup Ponieważ pierwszy wiersz naszej tabeli nie jest posortowany od A do Z, możemy wyszukiwać tylko z dokładnym dopasowaniem, co w tym przykładzie działa bardzo dobrze.

    Teraz składasz te argumenty razem i otrzymujesz następujący wzór:

    =VLOOKUP(40, A2:B15,2)

    3 rzeczy, które powinieneś wiedzieć o funkcji HLOOKUP w Excelu

    Zawsze, gdy wykonujesz poziomy lookup w Excelu, pamiętaj o następujących faktach:

    1. Funkcja HLOOKUP może wyszukiwać tylko w najwyższy rząd z tablica Jeśli musisz szukać w innym miejscu, rozważ użycie formuły Index / Match.
    2. HLOOKUP w Excelu to. bez rozróżniania wielkości liter , nie rozróżnia wielkich i małych liter.
    3. Jeśli range_lookup jest ustawiona na TRUE lub pominięta ( przybliżony dopasowanie), wartości w pierwszym wierszu tablica muszą być posortowane w wzrastający (A-Z) od lewej do prawej.

    Jaka jest różnica między VLOOKUP i HLOOKUP w Excelu?

    Jak już wiesz, obie funkcje VLOOKUP i HLOOKUP wyszukują wartość looku. Różnica polega na sposobie wyszukiwania. Jak zapewne zauważyłeś, nazwy funkcji różnią się tylko pierwszą literą - "H" oznacza poziomą, a "V" pionową.

    Stąd używasz funkcji VLOOKUP do wyszukiwania jest pionowe listy, gdy twoje wartości lookup znajdują się w kolumnie po lewej stronie danych, które chcesz znaleźć.

    Funkcja HLOOKUP wykonuje przeglądanie poziome - wyszukuje wartość lookup w najwyższym wierszu tabeli i zwraca wartość znajdującą się określoną liczbę wierszy w dół w tej samej kolumnie.

    Poniższy obrazek demonstruje różnicę między formułami Vlookup i Hlookup w Excelu:

    Jak używać HLOOKUP w Excelu - przykłady formuł

    Teraz, gdy funkcja HLOOKUP zaczęła wyglądać dla Ciebie nieco bardziej znajomo, omówmy jeszcze kilka przykładów formuł, aby utrwalić wiedzę.

    Wyszukiwanie poziome z dopasowaniem przybliżonym i dokładnym

    Jak już wiesz, funkcja HLOOKUP w Excelu może wykonywać wyszukiwanie z dopasowaniem dokładnym i niedokładnym, w zależności od tego, jaka wartość jest dostarczana do funkcji range_lookup argument:

    • TRUE lub pominięty -. przybliżony mecz
    • FALSE - dokładny mecz

    Należy pamiętać, że chociaż mówimy "dopasowanie przybliżone", każda formuła Hlookup szuka dokładnego dopasowania w pierwszej kolejności. Ale ustawienie ostatniego argumentu na FALSE pozwala formule zwrócić przybliżone dopasowanie (najbliższą wartość, która jest mniejsza niż wartość lookup), jeśli dokładne dopasowanie nie zostanie znalezione; TRUE lub pominięcie zwraca błąd #N/A w tym przypadku.

    Aby lepiej zobrazować ten punkt, rozważ następujące przykłady HLOOKUP.

    HLOOKUP z dopasowaniem przybliżonym

    Załóżmy, że masz listę planet w wierszu 2 (B2:I2) i ich temperatury w wierszu 1(B1:I1). Chcesz dowiedzieć się, która planeta ma określoną temperaturę, która jest wprowadzana w komórce B4.

    Nie można polegać na tym, że użytkownicy znają dokładnie temperaturę wyszukiwania, więc sensownym rozwiązaniem jest zwrócenie wartości najbliższy mecz jeśli nie znaleziono dokładnej wartości.

    Na przykład, aby znaleźć planetę, której średnia temperatura wynosi około -340 °F, użyj następującego wzoru ( range_lookup ustawione na TRUE lub pominięte jak w tym przykładzie):

    =HLOOKUP(B4, B1:I2, 2)

    Pamiętaj, że dopasowanie przybliżone wymaga sortowania wartości w górnym rzędzie od najmniejszego do największego lub od A do Z, w przeciwnym razie twoja formuła Hlookup może zwrócić nieprawidłowy wynik.

    Jak widać na poniższym zrzucie ekranu, nasza formuła zwraca Uran , jedna z najzimniejszych planet w Układzie Słonecznym utrzymująca średnią temperaturę -346 stopni Fahrenheita.

    HLOOKUP z dokładnym dopasowaniem

    Jeśli znasz dokładnie wartość lookup, możesz ustawić ostatni parametr HLOOKUP na FALSE:

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

    Z jednej strony, przybliżone dopasowanie Hlookup jest bardziej przyjazne dla użytkownika, ponieważ nie wymaga sortowania danych w pierwszym wierszu. Z drugiej strony, jeśli dokładne dopasowanie nie zostanie znalezione, zostanie zwrócony błąd #N/A.

    Wskazówka. aby nie straszyć swoich użytkowników błędami N/A, możesz osadzić swoją formułę Hlookup w IFERROR i wyświetlić własny komunikat, np:

    =IFERROR(HLOOKUP(B4, B1:I2, 2, FALSE), "Przepraszamy, nic nie znaleziono")

    Jak zrobić HLOOKUP z innego arkusza lub skoroszytu

    Ogólnie rzecz biorąc, h-lookup z innego arkusza lub innego skoroszytu oznacza nic innego jak dostarczenie zewnętrznych odwołań do twojej formuły HLOOKUP.

    Aby wyciągnąć pasujące dane z inny arkusz , określasz nazwę arkusza, po której następuje wykrzyknik. na przykład:

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

    Jeśli nazwa arkusza zawiera miejsca lub znaki niealfabetyczne , obudować nazwę w pojedynczy cudzysłów, jak to:

    =HLOOKUP(B$1, 'Średnice planet'!$B$1:$I$2,2,FALSE)

    Przy powoływaniu się na inny podręcznik , dołącz nazwę skoroszytu zamkniętą w nawiasach kwadratowych:

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

    Jeśli pobieramy dane z zamkniętego skoroszytu, należy podać całą ścieżkę:

    =HLOOKUP(B$1, 'D:raporty[Book1.xlsx]Średnice'!$B$1:$I$2, 2, FALSE)

    Wskazówka Zamiast ręcznie wpisywać w formule nazwy skoroszytu i arkusza, możesz zaznaczyć komórki w innym arkuszu, a Excel automatycznie doda do formuły zewnętrzne odwołanie.

    Excel HLOOKUP z dopasowaniem częściowym (znaki wieloznaczne)

    Podobnie jak w przypadku funkcji VLOOKUP, funkcja HLOOKUP programu Excel pozwala na użycie następujących znaków wieloznacznych w polu lookup_value argument:

    • Znak zapytania (?), aby dopasować dowolny pojedynczy znak
    • Asterisk (*), aby dopasować dowolny ciąg znaków

    Znaki wieloznaczne przydają się, gdy chcemy wyciągnąć informacje z bazy danych na podstawie jakiegoś tekstu, który jest częścią zawartości komórki lookup.

    Na przykład masz listę nazw klientów w wierszu 1 i identyfikatory zamówień w wierszu 2. Chcesz znaleźć identyfikator zamówienia dla konkretnego klienta, ale nie możesz dokładnie zapamiętać nazwy klienta, ale pamiętasz, że zaczyna się od "as".

    Zakładając, że twoje dane znajdują się w komórkach B1:I2 (. table_array) a numery porządkowe znajdują się w wierszu 2 ( suma_indeksu_wiersza ), formuła przebiega następująco:

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

    Aby uczynić formułę bardziej elastyczną, możesz wpisać wartość lookup w specjalnej komórce, powiedzmy B4, i konkatenować tę komórkę ze znakiem wieloznacznym, jak w tym przypadku:

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

    Uwagi.

    • Aby formuła wieloznaczna HLOOKUP działała poprawnie, należy range_lookup argument musi być ustawiony na FALSE.
    • Jeśli tablica zawiera więcej niż jedną wartość, która spełnia kryteria wieloznaczne, zwracana jest pierwsza znaleziona wartość.

    Absolutne i względne odwołania do komórek w formułach HLOOKUP

    Jeśli piszesz formułę dla pojedynczej komórki, możesz nie martwić się o prawidłowe użycie względnych i bezwzględnych odniesień do komórki, albo jeden z nich zrobi.

    Kopiowanie formuły do wielu komórek to inna historia.W istocie:

    • Zawsze powinieneś naprawić tablica używając bezwzględnych odniesień do komórek ze znakiem dolara ($), jak $B$1:$I$2.
    • Zazwyczaj lookup_value odniesienie jest względne lub mieszane w zależności od twojej logiki biznesowej.

    Aby wszystko było jaśniejsze, przyjrzyjmy się bliżej formule, która wyciąga dane z innego arkusza:

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

    W powyższym wzorze używamy absolutny odniesienia do komórek ($B$1:$I$2) w tablica ponieważ powinien pozostać niezmienny, gdy formuła jest kopiowana do innych komórek.

    Dla lookup_value (B$1), używamy a mieszane referencja, kolumna względna i wiersz bezwzględny, ponieważ nasze wartości lookup (nazwy planet) znajdują się w tym samym wierszu (wiersz 1), ale w różnych kolumnach (od B do I) i referencja kolumny powinna się zmieniać na podstawie względnej pozycji komórki, w której skopiowano formułę.

    Dzięki sprytnemu wykorzystaniu odwołań do komórek, nasza formuła Hlookup działa doskonale dla wielu komórek:

    INDEKS/MATCH - bardziej wydajna alternatywa dla HLOOKUP w Excelu

    Jak już wiesz, funkcja HLOOKUP w Excelu ma szereg ograniczeń, z których najistotniejsze to brak możliwości wyszukiwania w dowolnym miejscu poza najwyższym wierszem oraz konieczność sortowania wartości podczas wyszukiwania z dopasowaniem przybliżonym.

    Na szczęście istnieje potężniejsza i bardziej wszechstronna alternatywa dla Vlookup i Hlookup w Excelu - łącznik funkcji INDEX i MATCH, który sprowadza się do tej ogólnej formuły:

    INDEKS ( gdzie zwrócić wartość z , MATCH ( wartość podglądu , gdzie szukać , 0))

    Zakładając, że twoja wartość lookup jest w komórce B7, szukasz dopasowania w wierszu 2 (B2:I2) i chcesz zwrócić wartość z wiersza 1 (B1:I1), formuła jest następująca:

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

    Na zrzucie ekranu poniżej widać 2 formuły Hlookup, które wyszukują w pierwszym i drugim wierszu, a w obu przypadkach INDEX MATCH działa równie dobrze.

    Szczegółowe wyjaśnienie logiki formuły i więcej przykładów znajdziesz na stronie INDEX MATCH jako lepsza alternatywa dla VLOOKUP.

    Jak zrobić h-lookup z rozróżnieniem wielkości liter w programie Excel

    Jak wspomniano na początku tego poradnika, funkcja HLOOKUP w Excelu nie uwzględnia wielkości liter. W sytuacjach, gdy wielkość znaków ma znaczenie, można wziąć funkcję EXACT, która dokładnie porównuje komórki, i umieścić ją wewnątrz formuły INDEX MATCH omówionej w poprzednim przykładzie:

    INDEKS ( wiersz, aby zwrócić wartość z , MATCH(TRUE, EXACT( wiersz do wyszukania w , lookup value) , 0))

    Zakładając, że twoja wartość lookup znajduje się w komórce B4, zakres lookup to B1:I1, a zakres zwrotu to B2:I2, formuła przyjmuje następujący kształt:

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

    Ważna uwaga! Jest to formuła tablicowa i dlatego powinieneś nacisnąć Ctrl + Shift + Enter, aby ją zakończyć.

    Powyższy przykład demonstruje mój ulubiony, ale nie jedyny możliwy sposób na wykonanie Hlookup z rozróżnianiem wielkości liter w Excelu. Jeśli jesteś ciekaw innych technik, sprawdź ten tutorial: 4 sposoby na wykonanie Vlookup z rozróżnianiem wielkości liter w Excelu. Myślę, że nie będziesz miał problemów z przebudową formuł Vlookup dla poziomego lookupu.

    Top 10 powodów, dla których Excel HLOOKUP nie działa

    Do tej pory wiesz już, że Hlookup jest bardzo przydatną i potężną funkcją lookup w Excelu. Jest też funkcją podchwytliwą, a z powodu jej licznych specyfik #N/A, #VALUE lub #REF błędy są częstym widokiem. Jeśli Twoja formuła HLOOKUP nie działa poprawnie, najprawdopodobniej jest to spowodowane jednym z następujących powodów.

    1) HLOOKUP w Excelu nie może patrzeć ponad siebie

    Nawet jeśli zapomnisz o wszystkich innych szczegółach dotyczących wyszukiwania poziomego w Excelu, pamiętaj o tym istotnym - Hlookup może wyszukiwać tylko w najwyższy rząd Jeśli wartości lookup znajdują się w innym wierszu, zwracany jest błąd N/A. Aby pokonać to ograniczenie, użyj formuły INDEX MATCH.

    2. dopasowanie przybliżone a dopasowanie dokładne

    Podczas wykonywania wyszukiwania w Excelu, zarówno poziomego (Hlookup) jak i pionowego (Vlookup), w większości przypadków szuka się konkretnej rzeczy, a zatem wymaga się dokładnego dopasowania. Podczas wyszukiwania z dopasowaniem przybliżonym ( range_lookup ustawione na TRUE lub pominięte), pamiętaj o sortowaniu wartości w pierwszym rzędzie w porządku rosnącym.

    Więcej informacji i przykłady formuł znajdziesz w artykule Excel Hlookup z dopasowaniem przybliżonym i dokładnym.

    3) Odwołanie do tablicy zmienia się podczas kopiowania formuły

    Podczas używania wielu HLOOKUP do pobierania informacji o wierszu wartości lookup, musisz zablokować tablica odniesienie, jak pokazano w Bezwzględne i względne odniesienia do komórek w formułach Hlookup.

    4. wstawianie lub usuwanie nowego wiersza

    Aby zrozumieć, dlaczego wstawienie nowego wiersza może złamać formułę Hlookup, przypomnij sobie, w jaki sposób Excel HLOOKUP pobiera informacje o wartości lookup - na podstawie podanego przez Ciebie numeru indeksu wiersza.

    Załóżmy, że chcemy uzyskać dane dotyczące sprzedaży na podstawie ID produktu. Dane te znajdują się w wierszu 4, więc wpisujemy 4 w polu suma_indeksu_wiersza argument. Ale po wstawieniu nowego wiersza staje się on wierszem 5... i twój Hlookup przestaje działać. Ten sam problem może wystąpić podczas usuwania istniejącego wiersza z tabeli.

    Rozwiązaniem jest albo zablokowanie tabeli, aby uniemożliwić użytkownikom wstawianie nowych wierszy, albo użycie INDEKS & MATCH zamiast Hlookup. W formułach Index/Match określasz wiersze do wyszukiwania i zwracania wartości jako odniesienia do zakresu, a nie numery indeksów, a Excel jest wystarczająco inteligentny, aby dostosować te odniesienia w locie.martwiąc się o aktualizację każdej formuły w arkuszu.

    5) Duplikaty w tabeli

    Funkcja HLOOKUP w Excelu może zwrócić tylko jedną wartość, którą jest pierwsza wartość w tabeli pasująca do wartości lookup.

    Jeśli w Twojej tabeli znajduje się kilka identycznych rekordów, wybierz jedno z poniższych rozwiązań, które najlepiej odpowiada Twoim potrzebom:

    • Usuń duplikaty za pomocą środków Excela lub naszego narzędzia do usuwania duplikatów
    • Jeśli w zbiorze danych powinny pozostać zduplikowane rekordy, utwórz tabelę przestawną, aby pogrupować i przefiltrować dane w pożądany sposób.
    • Użyj formuły tablicowej, aby wyodrębnić wszystkie zduplikowane wartości w zakresie lookup.

    6. dodatkowe miejsca

    Kiedy Twoja oczywiście poprawna formuła Hlookup zwraca kilka błędów #N/A, sprawdź, czy w Twojej tabeli i wartości lookup nie ma dodatkowych spacji. Możesz szybko usunąć wiodące, ciągnące się i nadmiarowe spacje pomiędzy nimi za pomocą funkcji Excel TRIM lub naszego narzędzia do czyszczenia komórek.

    7. liczby sformatowane jako tekst

    Ciągi tekstowe, które wyglądają jak liczby, to kolejna przeszkoda dla formuł Excela. Szczegółowy opis tego problemu i możliwe rozwiązania zostały opisane w Dlaczego formuły Excela mogą przestać działać.

    8. wartość Lookup przekracza 255 znaków

    Wszystkie funkcje Lookup w Excelu działają tylko wtedy, gdy wartość lookupu ma mniej niż 255 znaków. Dłuższa wartość lookupu powoduje błąd #VALUE! Ponieważ formuła INDEX /MATCH jest wolna od tego ograniczenia, użyj jej, aby pokonać tę przeszkodę.

    9. nie określono pełnej ścieżki do skoroszytu wyszukiwania

    Jeśli wykonujesz h-lookup z innego skoroszytu, pamiętaj o podaniu pełnej ścieżki do niego. Kilka przykładów formuł znajdziesz tutaj: Jak wykonać h-lookup z innego arkusza lub skoroszytu.

    10. błędne argumenty

    Już nie raz podkreślano, że HLOOKUP jest wymagającą funkcją, do której należy podchodzić z dużą ostrożnością. Poniżej przedstawiono kilka najczęstszych błędów spowodowanych podaniem nieprawidłowych argumentów:

    • Jeśli row_index_num jest mniejszy niż 1, funkcja HLOOKUP zwraca błąd #VALUE!
    • Jeśli row_index_num jest większe niż liczba wierszy w table_array, zwracany jest błąd #REF!
    • Jeśli wyszukujesz z dopasowaniem przybliżonym i twoja lookup_value jest mniejsza niż najmniejsza wartość w pierwszym wierszu table_array, zwracany jest błąd #N/A.

    Cóż, oto jak używać HLOOKUP w Excelu. Mam nadzieję, że te informacje będą dla Ciebie pomocne. Dziękuję za przeczytanie i mam nadzieję, że zobaczymy się na naszym blogu w przyszłym tygodniu!

    Pobierz zeszyt ćwiczeń

    Przykłady formuły HLOOKUP w programie Excel

    Michael Brown jest oddanym entuzjastą technologii z pasją do upraszczania złożonych procesów za pomocą narzędzi programowych. Dzięki ponad dziesięcioletniemu doświadczeniu w branży technologicznej doskonalił swoje umiejętności w programach Microsoft Excel i Outlook, a także w Arkuszach i Dokumentach Google. Blog Michaela jest poświęcony dzieleniu się swoją wiedzą i doświadczeniem z innymi, dostarczając łatwych do zastosowania wskazówek i samouczków w celu poprawy produktywności i wydajności. Niezależnie od tego, czy jesteś doświadczonym profesjonalistą, czy początkującym, blog Michaela oferuje cenne spostrzeżenia i praktyczne porady dotyczące maksymalnego wykorzystania tych niezbędnych narzędzi programowych.