Download het voorbeeldwerkboek
Deze zelfstudie laat zien hoe u de Excel HORIZ.ZOEKEN Functie in Excel om een waarde op te zoeken.
HORIZ.ZOEKEN Functie Overzicht
De HLOOKUP-functie Hlookup staat voor horizontaal opzoeken. Het zoekt naar een waarde in de bovenste rij van een tabel. Retourneert vervolgens een waarde een opgegeven aantal rijen lager dan de gevonden waarde. Het is hetzelfde als een vlookup, behalve dat het waarden horizontaal opzoekt in plaats van verticaal.
(Let op hoe de formule-invoer verschijnt)
HORIZ.ZOEKEN Functiesyntaxis en invoer:
1 | =HLOOKUP(lookup_value,table_array,row_index_num,range_lookup) |
opzoekwaarde - De waarde waarnaar u wilt zoeken.
table_array -De tabel waaruit gegevens moeten worden opgehaald.
rij_index_num - Het rijnummer waaruit gegevens moeten worden opgehaald.
bereik_opzoeken -[optioneel] Een boolean om exacte overeenkomst of geschatte overeenkomst aan te geven. Standaard = TRUE = overeenkomst bij benadering.
Wat is de HORIZ.ZOEKEN-functie?
Als een van de oudere functies in de wereld van spreadsheets, wordt de HORIZ.ZOEKEN-functie gebruikt om te doen Horiëntaals Opzoeken. Het heeft een paar beperkingen die vaak worden overwonnen met andere functies, zoals INDEX/MATCH. Ook zijn de meeste tabellen verticaal gebouwd, maar er zijn enkele momenten waarop het handig is om horizontaal te zoeken.
Basis voorbeeld
Laten we eens kijken naar een voorbeeld van gegevens uit een cijferlijst. We zullen verschillende voorbeelden behandelen voor het extraheren van informatie voor specifieke studenten.
Als we willen weten in welke klasse Bob zit, schrijven we de formule:
1 | =HLOOKUP("Bob", A1:E3, 2, ONWAAR) |
Belangrijke dingen om te onthouden zijn dat het item dat we zoeken (Bob), in de eerste rij van ons zoekbereik moet staan (A1:E3). We hebben de functie verteld dat we een waarde van de 2 . willen retournerennd rij van het zoekbereik, in dit geval rij 2. Ten slotte hebben we aangegeven dat we een exacte overeenkomst door False als laatste argument te plaatsen. Hier is het antwoord "Lezen".
Zijtip: Je kunt ook het getal 0 gebruiken in plaats van False als het laatste argument, omdat ze dezelfde waarde hebben. Sommige mensen geven hier de voorkeur aan omdat het sneller is om te schrijven. Weet gewoon dat beide acceptabel zijn.
verschoven gegevens
Ter verduidelijking van ons eerste voorbeeld: het opzoekitem hoeft niet in rij 1 van uw spreadsheet te staan, alleen in de eerste rij van uw zoekbereik. Laten we dezelfde dataset gebruiken:
Laten we nu het cijfer voor de klas Wetenschap zoeken. Onze formule zou zijn:
1 | =HLOOKUP("Wetenschap", A2:E3, 2, ONWAAR) |
Dit is nog steeds een geldige formule, aangezien de eerste rij van ons zoekbereik rij 2 is, waar onze zoekterm "Wetenschap" zal worden gevonden. We retourneren een waarde van de 2nd rij van het zoekbereik, in dit geval rij 3. Het antwoord is dan "A-".
Gebruik van jokertekens
De HORIZ.ZOEKEN-functie ondersteunt het gebruik van de jokertekens "*" en "?" bij het doen van zoekopdrachten. Laten we bijvoorbeeld zeggen dat we vergeten waren hoe we de naam van Frank moesten spellen en dat we gewoon wilden zoeken naar een naam die begint met "F". We zouden de formule kunnen schrijven:
1 | =HLOOKUP("F*", A1:E3, 2, ONWAAR) |
Dit zou de naam Frank in kolom E kunnen vinden en vervolgens de waarde van 2 . kunnen retournerennd relatieve rij. In dit geval is het antwoord "Wetenschap".
Niet-exacte overeenkomst
Meestal wil je ervoor zorgen dat het laatste argument in HORIZ.ZOEKEN False (of 0) is, zodat je een exacte overeenkomst krijgt. Er zijn echter een paar momenten waarop u mogelijk op zoek bent naar een niet-exacte overeenkomst. Als u een lijst met gesorteerde gegevens hebt, kunt u ook HORIZ.ZOEKEN gebruiken om het resultaat te retourneren voor het item dat hetzelfde of het op één na kleinste item is. Dit wordt vaak gebruikt bij het omgaan met toenemende reeksen getallen, zoals in een belastingtabel of commissiebonussen.
Stel dat u het belastingtarief wilt vinden voor een inkomen dat in cel H2 is ingevoerd. De formule in H4 kan zijn:
1 | = HORIZ.ZOEKEN(H2, B1:F2, 2, WAAR) |
Het verschil in deze formule is dat ons laatste argument "waar" is. In ons specifieke voorbeeld kunnen we zien dat wanneer onze persoon een inkomen van $ 45.000 invoert, hij een belastingtarief van 15% zal hebben.
Opmerking: Hoewel we meestal een exacte overeenkomst willen met False als argument, vergeet je de 4 . op te gevene argument in een HORIZ.ZOEKEN, is de standaardwaarde True. Dit kan ervoor zorgen dat u onverwachte resultaten krijgt, vooral als u te maken hebt met tekstwaarden.
Dynamische rij
HORIZ.ZOEKEN vereist dat u een argument geeft dat aangeeft van welke rij u een waarde wilt retourneren, maar de gelegenheid kan zich voordoen wanneer u niet weet waar de rij zal zijn, of u wilt dat uw gebruiker kan wijzigen van welke rij hij moet terugkeren. In deze gevallen kan het handig zijn om de MATCH-functie te gebruiken om het rijnummer te bepalen.
Laten we nog eens kijken naar ons cijferlijstvoorbeeld, met wat invoer in G2 en G4. Om het kolomnummer te krijgen, kunnen we een formule schrijven van
1 | =VERGELIJKEN(G2, A1:A3, 0) |
Hiermee wordt geprobeerd de exacte positie van "Grade" binnen het bereik A1:A3 te vinden. Het antwoord is 3. Als we dit weten, kunnen we het aansluiten op een HORIZ.ZOEKEN-functie en een formule in G6 schrijven, zoals zo:
1 | = HORIZ.ZOEKEN(G4, A1:E3, VERGELIJKEN(G2, A1:A3, 0), 0) |
Dus de MATCH-functie evalueert naar 3, en dat vertelt de HLOOKUP om een resultaat van de 3 . te retournerenrd rij in het A1:E3-bereik. Over het algemeen krijgen we dan ons gewenste resultaat van "C". Onze formule is nu dynamisch omdat we de rij waarnaar moet worden gekeken of de naam waarnaar moet worden gezocht, kunnen wijzigen.
HORIZ.ZOEKEN-beperkingen
Zoals vermeld aan het begin van het artikel, is het grootste nadeel van HORIZ.ZOEKEN dat het vereist dat de zoekterm in de meest linkse kolom van het zoekbereik wordt gevonden. Hoewel er enkele mooie trucs zijn die je kunt doen om dit te overwinnen, is het gebruikelijke alternatief om INDEX en MATCH te gebruiken. Die combo geeft je meer flexibiliteit, en het kan soms zelfs een snellere berekening zijn.
HORIZ.ZOEKEN in Google Spreadsheets
De HORIZ.ZOEKEN-functie werkt precies hetzelfde in Google Spreadsheets als in Excel:
extra notities
Gebruik de HORIZ.ZOEKEN-functie om een horizontale opzoeking uit te voeren. Als u al bekend bent met de VERT.ZOEKEN-functie, werkt een HORIZ.ZOEKEN op precies dezelfde manier, behalve dat het opzoeken horizontaal wordt uitgevoerd in plaats van verticaal. De HORIZ.ZOEKEN zoekt naar een exacte overeenkomst (bereik_opzoeken = ONWAAR) of de dichtstbijzijnde overeenkomst die gelijk is aan of kleiner is dan de lookup_value (bereik_opzoeken = TRUE, alleen numerieke waarden) in de eerste rij van de table_array. Het retourneert dan een overeenkomstige waarde, n aantal rijen onder de overeenkomst.
Wanneer u een HORIZ.ZOEKEN gebruikt om een exacte overeenkomst te vinden, definieert u eerst een identificerende waarde waarnaar u wilt zoeken als de opzoekwaarde. Deze identificerende waarde kan een SSN, werknemers-ID, naam of een andere unieke identificatie zijn.
Vervolgens definieert u het bereik (genaamd de table_array) die de id's in de bovenste rij bevat en de waarden waarnaar u uiteindelijk wilt zoeken in de rijen eronder. BELANGRIJK: De unieke identifiers moeten in de bovenste rij staan. Als dat niet het geval is, moet u de rij naar boven verplaatsen of MATCH / INDEX gebruiken in plaats van HORIZ.ZOEKEN.
Ten derde, definieer het rijnummer (rij_index) van de table_array dat u wilt retourneren. Houd er rekening mee dat de eerste rij, die de unieke ID's bevat, rij 1 is. De tweede rij is rij 2, enz.
Als laatste moet u aangeven of u wilt zoeken naar een exacte overeenkomst (FALSE) of de dichtstbijzijnde overeenkomst (TRUE) in de bereik_opzoeken. Als de exacte overeenkomstoptie is geselecteerd en er wordt geen exacte overeenkomst gevonden, wordt een fout geretourneerd (#N/A). Om de formule leeg of "niet gevonden" te laten retourneren, of een andere waarde in plaats van de foutwaarde (#N/A), gebruikt u de IFERROR-functie met de HORIZ.ZOEKEN.
De functie HORIZ.ZOEKEN gebruiken om een geschatte matchset te retourneren: bereik_opzoeken = WAAR. Deze optie is alleen beschikbaar voor numerieke waarden. De waarden moeten in oplopende volgorde worden gesorteerd.
HORIZ.ZOEKEN Voorbeelden in VBA
U kunt ook de functie HORIZ.ZOEKEN in VBA gebruiken. Type:application.worksheetfunction.hlookup(lookup_value,table_array,row_index_num,range_lookup)
De volgende VBA-instructies uitvoeren:
123456 | Range("G2")=Application.WorksheetFunction.HLookup(Range("C1"),Range("A1:E3"),1)Range("H2")=Application.WorksheetFunction.HLookup(Range("C1"),Range("A1:E3"),2)Range("I2")=Application.WorksheetFunction.HLookup(Range("C1"),Range("A1:E3"),3)Range("G3")=Application.WorksheetFunction.HLookup(Range("D1"),Range("A1:E3"),1)Range("H3")=Application.WorksheetFunction.HLookup(Range("D1"),Range("A1:E3"),2)Range("I3")=Application.WorksheetFunction.HLookup(Range("D1"),Range("A1:E3"),3) |
zal de volgende resultaten opleveren:
Voor de functieargumenten (lookup_value, enz.), kunt u ze ofwel rechtstreeks in de functie invoeren, of variabelen definiëren om in plaats daarvan te gebruiken.
Keer terug naar de lijst met alle functies in Excel