HomeExcel23 dingen die je moet weten over verticaal zoeken (VERT.ZOEKEN)

23 dingen die je moet weten over verticaal zoeken (VERT.ZOEKEN)

~ Advertentie ~

De Excel verticaal zoeken functie is een geweldige oplossing voor het ophalen van informatie uit een tabel. Je hebt de mogelijkheid om dynamisch te zoeken en informatie uit een tabel te halen.

Ondanks dat verticaal zoeken relatief makkelijk is in gebruik, kan er nog genoeg mis gaan. Standaard gaat Excel er vanuit dat je een niet-geheel exacte overeenkomst wilt hebben, terwijl je waarschijnlijk een exact resultaat zou willen hebben. Hierdoor kunnen resultaten anders zijn dan dat je zou verwachten en dat wil je niet.

Hieronder een lijst met tips. Wil je eerst meer weten lees dan de Excel VERT.ZOEKEN functie uitgelegd.

1. Hoe verticaal zoeken werkt

Met de VERT.ZOEKEN functie kun je zoeken en data ophalen uit een tabel. VERT staat voor verticaal zoeken, wat betekent dat de data in de tabel verticaal geordend moet zijn. Als de data horizontaal is geordend kun je de functie HORIZ.ZOEKEN gebruiken waarbij HORIZ voor horizontaal staat.

Als je een tabel hebt met de data verticaal geordend en de zoekwaarde in de meest linkerkolom kun je waarschijnlijk de functie verticaal zoeken gebruiken.

Verticaal zoeken heeft een zoekwaarde nodig in de meest linkerkolom. De data die je wilt ophalen, het resultaat, moet altijd in een kolom rechts van de zoekwaarde staan. de kolommen zijn genummerd. De zoekwaardekolom is kolom 1. Om een waarde op te halen geven we in de formule de kolom op van de waarde welke we willen ophalen. In het voorbeeld hieronder willen we weten welk magazijn het is, dat is de 4e kolom. We gebruiken 4 dus als kolomindex_getal.

Hoe verticaal zoeken werkt

In het voorbeeld hierboven is de meest linkerkolom het artikelnummer kolom 1 en het magazijn is kolom 4.

Om VERT.ZOEKEN te gebruiken hebben we 4 argumenten nodig:

  1. De waarde waar we naar zoeken (zoekwaarde)
  2. Het bereik of de tabel waarin we zoeken (tabelmatrix)
  3. De kolom waarvan we de waarde willen weten (kolomindex_getal)
  4. De manier van benaderen (benaderen, WAAR = bij benadering, ONWAAR = exact)

2. Verticaal Zoeken zoekt alleen rechts

Misschien wel de grootste beperking van VERT.ZOEKEN is de dat de functie alleen van links naar rechts kan zoeken.

Dat betekent dat de kolom met de zoekwaarde altijd links moet staan van de waarde die we zoeken. Als de zoekwaarde in de eerste kolom staat is er geen probleem omdat alle overige kolommen zich rechts van de zoekwaarde bevinden. Staat je zoekwaarde ergens midden in de tabel dan kun je niet alle data uit de tabel halen. Je zal dan ook je bereik kleiner moeten maken dan de gehele tabel.

Verticaal zoeken zoekt alleen rechts

Je kunt dit probleem omzeilen door de functie INDEX en VERGELIJKEN te gebruiken.

3. Verticaal Zoeken vindt altijd het eerste resultaat

Als de kolom waarin we zoeken (zoekwaarde) duplicaten bevat zal VERT.ZOEKEN alleen het eerste resultaat weergeven. in onderstaand voorbeeld zoeken we op Mercurius in de eerste kolom en is de kolomindex_getal 4, de kolom satelieten. We hebben als resultaat 0 omdat dat het eerste resultaat is.

VERT.ZOEKEN vindt altijd het eerste resultaat

Wil je een lijstje maken met alle zoek resultaten lees dan: Meerdere resultaten weergeven zonder verticaal zoeken.

4. Verticaal Zoeken is niet hoofdlettergevoelig

Als we zoeken naar een waarde maakt het Excel niet uit of we hoofdletters gebruiken in de zoekwaarde. Als op productcode GBSU zoeken komt dat overeen met productcode gbsu. In dit voorbeeld zoeken we naar het in hoofdletters geschreven MERCURIUS. De overeenkomst vinden we in Mercurius.

VERT.ZOEKEN is niet hoofdlettergevoelig

5. VERT ZOEKEN heeft twee zoek methoden

VERT.ZOEKEN heeft twee methoden om zoek resultaten weer te geven namelijk exacte overeenkomst of bijna exacte overeenkomst. In de meeste gevallen willen we een exacte overeenkomst vinden. In het geval dat je zoekt op ID, film titel, naam of artikelnummer zoals in onderstaand voorbeeld waar we zoeken op artikelnummer 7493.

VERT ZOEKEN heeft twee zoek methoden

De formule in cel E6 is gebaseerd op het artikelnummer met een exacte overeenkomst:

= VERT.ZOEKEN (E5;B11:E17;2;0)

Echter, in sommige gevallen heb je geen exacte overeenkomst en zoek je het beste mogelijke resultaat . Een voorbeeld hiervan is het vinden van de juiste commissie percentage op basis van de maandelijkse sales. In dat geval wil je de het beste resultaat voor de zoekwaarde. Er is geen exacte overeenkomst maar we kunnen wel een uitkomst benaderen. In het voorbeeld hieronder zal de formule in cel D5 het beste resultaat vinden in de kolom commissie percentage.

VERT ZOEKEN heeft twee zoek methoden

De formule in cel D5 gebruikt een WAAR voor benadering om de juist commissie te verkrijgen:

= VERT.ZOEKEN (C5;$G$4:$H$10;2;WAAR)

6. Let op: Standaard is de benadering WAAR

Exacte of niet exacte overeenkomst bepalen we in het vierde argument van de formule: benadering. Je kunt deze op twee verschillende wijze invoeren:
– WAAR of 1
– ONWAAR of 0

Zoek je een exacte overeenkomst dan gebruik je ONWAAR of 0. Voor niet exacte overeenkomst gebruik je WAAR of 1.

= VERT.ZOEKEN (Zoekwaarde;tabelmatrix;Kolomindex_getal;WAAR) // Niet exact resultaat
= VERT.ZOEKEN (Zoekwaarde;tabelmatrix;Kolomindex_getal;ONWAAR) // Exact resultaat

Het vierde argument, benadering, is optioneel en standaard WAAR wat betekent dat verticaal zoeken standaard zoekt naar een niet exacte overeenkomst. Bij het uitvoeren van een niet exacte overeenkomst neemt VERT.ZOEKEN aan dat de tabel is gesorteerd en een binaire zoekopdracht uitvoert. Bij een binaire zoekopdracht retourneert VERT.ZOEKEN een exacte overeenkomst waarde en retourneert een waarde uit die rij. Als VERT.ZOEKEN echter een waarde heeft die groter is dan de zoekwaarde, retourneert deze een waarde uit de vorige rij.

Je moet dus goed opletten omdat je onbedoeld dus verkeerde resultaten kunt verkrijgen in deze standaard modus en als de tabel niet gesorteerd is.

Om dit te voorkomen gebruik je als vierde argument altijd ONWAAR of 0 om een exacte overeenkomst te vinden.

7. VERT.ZOEKEN gebruiken om een exacte overeenkomst te vinden

Als je VERT.ZOEKEN wilt dwingen om een exacte overeenkomst te vinden, zul je bij het vierde argument ONWAAR of 0 moeten gebruiken. De volgende twee formules geven dezelfde uitkomst:

= VERT.ZOEKEN ( waarde ; gegevens ; kolom ; ONWAAR )
= VERT.ZOEKEN ( waarde ; gegevens ; kolom ; 0 ) 

Als je gaat zoeken op een exacte overeenkomst en VERT.ZOEKEN kan geen waarde vinden, wordt er #N/B geretourneerd. Dat betekent dat VERT.ZOEKEN geen resultaat heeft gevonden.

8. VERT.ZOEKEN schatting bij benadering

Als je VERT.ZOEKEN wilt gebruiken om een schatting bij benadering uit te voeren, laat je het vierde argument leeg, of geef je WAAR of 1 op. De volgende 3 formules geven dezelfde uitkomst:

= VERT.ZOEKEN ( waarde , gegevens , kolom )  
= VERT.ZOEKEN ( waarde , gegevens , kolom ,  1 )  
= VERT.ZOEKEN ( waarde , gegevens , kolom ,  WAAR ) 

Het is verstandig om het vierde argument altijd in te stellen ondanks dat dit niet verplicht is. Maar op die manier weet je altijd welke uitkomst je kunt verwachten.

9. Voor benaderde overeenkomsten bereik sorteren

Als je gebruik maakt van het argument ONWAAR als 4e argument, moeten de gegevens in de tabel of bereik oplopend gesorteerd zijn. Anders komen er onjuiste resultaten uit de zoekopdracht. Let er ook op dat tekst gegevens goed zijn gesorteerd.

10. Gegevens samenvoegen uit verschillende tabellen

Als je twee of meer tabellen hebt kun je gegevens samenvoegen in 1 tabel voor analyse van je data. Een goed voorbeeld is een tabel “Bestellingen” en een tabel “Klanten”. We willen in de tabel bestellingen meer informatie van de klant hebben.

Gegevens samenvoegen uit verschillende tabellen

Omdat de Klant ID in beide tabellen voorkomt kunnen we deze waarde gebruiken om de gewenste gegevens te zoeken met VERT.ZOEKEN. In onderstaand voorbeeld gebruiken we twee maal VERT.ZOEKEN om de kolom Naam en Provincie op te zoeken op basis van de Klant ID.

Gegevens samenvoegen uit verschillende tabellen

11. Verticaal Zoeken kan gegevens classificeren of categoriseren

Als je een willekeurige categorie wilt toepassen een gegevens tabel kun j dit eenvoudig doen met verticaal zoeken. In de 2e tabel definiëren we de ‘sleutel’ om categorieën toe te wijzen.

Een klassiek voorbeeld is met cijfers, waarbij je aan de hand van de score bepaald of het resultaat slecht of zeer goed is:

VERT.ZOEKEN kan gegevens classificeren of categoriseren

In dit geval is VERT.ZOEKEN ingesteld op zoeken bij benadering., dus het is belangrijk dat de 2e tabel in oplopende volgorde is gesorteerd.

Een ander voorbeeld is het verdelen van afdelingen in groepen. In onderstaand voorbeeld gebruiken we VERT.ZOEKEN om een groep toe te wijzen aan elke afdeling.

VERT.ZOEKEN kan gegevens classificeren of categoriseren

12. Absolute verwijzing gebruiken

Als je van plan bent de formule te kopiëren is het handig om meteen absolute verwijzingen te maken. Een absolute verwijzing maak je door middel van een dollar ( $ ) teken.

Als je een formule in cel A1 met een verwijzing naar cel B1 door kopieert naar beneden zonder dollar teken zal de formule doortellen naar B2, B3, B4 enzovoorts. Maak je van de verwijzing $B$1 zal er altijd worden gerefereerd naar cel B1.

Absolute verwijzing gebruiken

13. Benoemde bereiken maken het makkelijker

Absolute reeksen zijn niet zo heel netjes en deze kun je heel gemakkelijk vervangen door een bereik te benoemen. Hiermee maak je voor jezelf ook veel makkelijker leesbaar in welk bereik je zoekt.

Benoemde bereiken maken het makkelijker

In plaats van alle formules aan te passen hoef je nu maar 1 bereik aan te passen als je de bron tabel aanpast.

14. Invoegen van kolom verbreekt bestaande VERT.ZOEKEN formules

Als je bestaande VERT.ZOEKEN formules in een werkblad hebt, kunnen deze verbreken op het moment dat je een kolom invoegt. Dat komt omdat de hard-gecodeerde kolomindex_getallen niet automatisch mee veranderen.

In onderstaand voorbeeld is een kolom ingevoegd (kolom D). We zien in de formule dat wel het bereik is aangepast maar de kolomindex_getal 3 is niet automatisch aangepast naar 4. Het jaartal is nog wel correct omdat deze links staat van de ingevoegde kolom en de formule dus niet aangepast is.

Invoegen van kolom verbreekt bestaande VERT.ZOEKEN formules

Om dit probleem te voorkomen kun je de kolomindex berekenen zoals beschreven in de volgende twee tips.

15. Gebruik RIJ of KOLOM om een kolomindex te bereken

Met het gebruik van RIJ of KOLOM kun je dynamische kolomindexen genereren. Als je opeenvolgende kolommen hebt, kun je met deze werkwijze één verticaal zoeken formule instellen en deze vervolgens kopiëren zonder dat er wijzigingen nodig zijn.

In onderstaande tabel films heb ik de KOLOM functie gebruikt om een dynamisch kolomindex_getal te creëren. In cel C# staat de volgende formule:

= VERT.ZOEKEN ( id; data; KOLOM()-1; 0 )

id = bereik van cel B3
data = bereik van B5 tot en met F10
KOLOM()-1 = Is huidige kolom in getal ( 3 ) min 1 = waarde 2
0 = Voor exacte overeenkomst

Gebruik RIJ of KOLOM om een kolomindex te bereken

De formule gemaakt in cel C3 kunnen we nu door kopiëren in de overige cellen naar rechts. De formules in de cellen C3, D3, E3 en F3 zijn gelijk. dat is mogelijk omdat in elke cel opnieuw het kolom getal opzoekt met KOLOM() en er 1 van af trekt om de zoek kolom te definiëren.

16. Gebruik VERT.ZOEKEN en VERGELIJKEN voor een dynamische kolomindex

Als we de functie verticaal zoeken gebruiken, en deze uitbreiden met de functie VERGELIJKEN om de positie van een kolom in een tabel op te zoeken kunnen we volledig dynamisch de kolomindex retourneren.

Een voorbeeld is het opzoeken van de omzet voor een verkoper in een bepaalde maand, of het opzoeken van de prijs voor een bepaald product van een bepaalde leverancier.

Stel dat we de bedragen van leveranciers in een tabel hebben per product:

Gebruik VERT.ZOEKEN en VERGELIJKEN voor een dynamische kolomindex

Verticaal zoeken kan het product makkelijk vinden, maar de naam van de leverancier kan niet automatisch verwerkt worden. Hiervoor gebruiken we de VERGELIJKEN functie in plaats van een statische kolomindex.

Gebruik VERT.ZOEKEN en VERGELIJKEN voor een dynamische kolomindex

Let op dat je een bereik toe kent aan alle kolommen in de tabel om de kolomnummers die worden gebruikt door verticaal zoeken “te synchroniseren”.

= VERT.ZOEKEN ( H2; data; VERGELIJKEN ( H3; leveranciers; 0 ); 0 )

Het is ook mogelijk om met behulp van de functies INDEX en VERGELIJKEN in twee richtingen te zoeken. Deze optie biedt meer flexibiliteit en betere prestaties op grotere data-sets.

17. Joker tekens gebruiken voor een gedeeltelijke overeenkomst

Wanneer je verticaal zoeken gebruikt met de benadering voor een exact resultaat, kun je gebruik maken van joker tekens in de zoekwaarde. Het klinkt tegenstrijdig maar met een joker teken maak je een exacte overeenkomst op basis van een gedeeltelijke overeenkomst.

In Excel kennen we twee joker tekens: een asterisk ( * ) komt overeen met een of meer tekens en een vraagteken ( ? ) komt overeen met één teken.

Je kunt bijvoorbeeld een asterisk rechtstreeks in een cel typen en ernaar verwijzen als een zoekwaarde met VERT.ZOEKEN. In onderstaand scherm hebben we “kon*” ingevoerd in H3, wat een benoemd bereik is met de “zoek”. Dit zorgt ervoor dat VERT.ZOEKEN overeenkomt met de naam “Koning”.

Joker tekens gebruiken voor een gedeeltelijke overeenkomst

De formule in dit geval is:

= VERT.ZOEKEN ( zoek ; data ; 1 ; 0 )

Je kunt het joker teken ook rechtstreeks in de formule inbouwen zoals in onderstaand voorbeeld. Daar voegen we de zoekwaarde eenvoudig samen met een asterisk in de de formule.

Joker tekens gebruiken voor een gedeeltelijke overeenkomst

Deze formule ziet er als volgt uit:

= VERT.ZOEKEN ( zoek & "*" ; data ; 1 ; 0 )

Wees wel voorzichtig met het gebruik van een joker teken bij VERT.ZOEKEN. Het maakt het makkelijk om een overeenkomst te vinden maar in sommige gevallen misschien te gemakkelijk en daarmee de verkeerde waarden.

18. #N/B fouten netjes afhandelen

Als je gebruik maakt van een exacte benadering geeft verticaal zoeken een fout #N/B als er geen overeenkomst is gevonden. In zekere zin is dat handig omdat je dan zeker weet dat er geen overeenkomst is gevonden. Een #N/B fout is echter niet mooi om naar te kijken als je veel tijd en energie hebt gestoken in een gelikt bestand. Er zijn verschillende manieren om in plaats van deze fout een iets anders weer te geven.

Zodra je de VERT.ZOEKEN functie gaat gebruiken kom je vroeg of laat de #N/B fout ongetwijfeld regen. Hij is nuttig omdat we dan zeker weten dat er geen overeenkomst is. In onderstaand voorbeeld zoeken we op de naam “dik”. Omdat “dik” niet in de tabel staat geeft VERT.ZOEKEN de #N/B fout.

#N/B fouten netjes afhandelen

De formule in dit geval is een volledige standaard exacte overeenkomst:

= VERT.ZOEKEN ( H2; data; 1; 0 )

#N/B fouten zijn echter niet leuk naar te kijken, dus we willen deze vervangen

Het makkelijkste om de fouten op te vangen is om de VERT.ZOEKEN te nesten in de ALS.FOUT functie. Met de ALS.FOUT functie kunt je elke fout opvangen en een resultaat naar keuzen retourneren.

OM de #N/B fout vast te leggen en bijvoorbeeld het resultaat “Niet gevonden” te retourneren kunnen we de VERT.ZOEKEN formule nesten in de ALS.FOUT formule:

#N/B fouten netjes afhandelen

Als de zoekwaarde wordt gevonden is er geen fout en wordt de VERT.ZOEKEN formule uitgevoerd. De formule is als volgt:

= ALS.FOUT ( VERT.ZOEKEN ( H2; data; 1; 0 ); "Niet gevonden" )

19. Nummers als tekst kunnen een fout veroorzaken

Soms bevat een tabel die je gebruikt nummers die zijn opgeslagen als tekst. Als je nummers ophaalt uit een tabel is dat geen probleem. Als de nummers in de eerste kolom (kolomindex) zijn opgeslagen als tekst, en het zoekwaarde getal is een getal krijg je een fout #N/B. De zoekwaarde en de waarden in de kolom waarin we zoeken moeten wel dezelfde type zijn, beide getal of beide tekst.

In het volgende voorbeeld zijn de getallen in de kolom ID ingevoerd als eigenschap tekst. de zoekwaarde in cel I2 is een eigenschap getal. We krijgen een fout terug van VERT.ZOEKEN omdat er geen overeenkomst is gevonden.

Nummers als tekst kunnen een fout veroorzaken

Om dit probleem op te lossen moeten we zorgen dat de opzoekwaarde en de eerste kolom van de tabel beide hetzelfde gegevenstype zijn, beide tekst of beide getal.

Eén manier om dit te doen is om de getallen in kolom ID om te zetten naar getal. Een eenvoudige manier is om de cellen te selecteren, te klikken op het waarschuwings icoontje om het menu te openen en te klikken op “Converteren naar getal”.

Nummers als tekst kunnen een fout veroorzaken

Als het niet mogelijk is om de brongegevens aan te passen, is het mogelijk om de formule aan te passen. We kunnen de opzoekwaarde in de formule VERT.ZOEKEN aanpassen. Door het toevoegen van “” converteren we de zoekwaarde naar tekst:

= VERT.ZOEKEN (I2 & ""; data; 2; 0 )
Nummers als tekst kunnen een fout veroorzaken

Als je er niet zeker van bent of het cijfers of tekst is kun je beide opties testen door het combineren van de functie VERT.ZOEKEN en ALS.FOUT als volgt:

= ALS.FOUT ( VERT.ZOEKEN (I2 ; data; 2; 0 ) ;
             VERT.ZOEKEN (I2 & ""; data; 2; 0 ) 

20. Verticaal Zoeken gebruiken om geneste ALS te vervangen

Je kunt VERT.ZOEKEN heel goed toe passen in plaats van een lange lijsten met formules met ALS testen. Als je veel geneste ALS berekeningen uitvoert ga je snel in de fout door de vele haakjes en je moet opletten dat je alles in de juiste volgorde zet, om geen logische fout te maken.

Een mooi voorbeeld van een geneste ALS-formule is het toekennen van een beoordeling op basis van een behaalde score. In onderstaand voorbeeld is te zien hoe de formules zijn opgebouwd uit genest ALS-formules met behulp van de beoordelingstabel aan de rechterzijde.

VERT.ZOEKEN gebruiken om geneste ALS te vervangen

De volledige geneste ALS-formule ziet er als volgt uit:

= ALS (C5<64;"Slecht"; ALS (C5<73;"Matig"; ALS (C5<85;"Voldoende";
 ALS (C5<95;"Goed";"Zeer goed"))))

Dit werkt op zich prima maar zowel de logica als de score’s zijn direct in de formule ingebakken. Als om wat voor reden ook de score moet worden aangepast moet je dit dus doen in 1 formule en vervolgens kopiëren naar de andere cellen.

VERT.ZOEKEN kan daarentegen makkelijk gebruik maken van een bereik. Na het instellen van een bereik voor de score tabel, genaamd score, is deze heel eenvoudig in de formule te gebruiken en genereert dezelfde retour waarden als de lange ALS-formule.

VERT.ZOEKEN gebruiken om geneste ALS te vervangen

Met het gedefinieerde bereik genaamd “score” hebben we een eenvoudige VERT.ZOEKEN formule:

= VERT.ZOEKEN ( C5; score; 2; 1 )

Het voordeel van deze methode is dat als de scores moeten worden aangepast dit alleen maar in de tabel score gedaan hoeft te worden. Door de formule worden de retour waarden direct aangepast aan de bron score tabel.

21. VERT.ZOEKEN kan maar één zoekwaarde verwerken

VERT.ZOEKEN kan alleen resultaten vinden op basis van één zoekwaarde en die moet zich dan ook nog eens meest links in het zoekgebied bevinden.

Dat betekent dat je dus niet gemakkelijk op naam én voornaam tegelijk kunt zoeken of op naam en afdeling. Daarnaast kunnen sommige namen meerdere malen voorkomen in de tabel en zal dus altijd het eerste overeenkomstige resultaat geretourneerd worden.

Er is echter wel een manier om deze beperking te omzeilen. Een oplossing is een hulpkolom te maken die waarden uit verschillende kolommen samenvoegt op opzoekwaarden te maken die zich voordoen als meerdere voorwaarden. In dit voorbeeld willen we bijvoorbeeld de afdeling en groep zoeken voor de medewerker maar de de voornaam en naam staan in afzonderlijke kolommen. en de achternaam komt ook nog twee maal voor in de tabel. Hoe kunnen we beide tegelijk opzoeken?

VERT.ZOEKEN kan maar één zoekwaarde verwerken

Voeg eerst helemaal links een hulpkolom in die naam en voornaam samenvoegt:

VERT.ZOEKEN kan maar één zoekwaarde verwerken

Vervolgens configureer je de VERT.ZOEKEN functie om te zoeken in de nieuwe help kolom.

VERT.ZOEKEN kan maar één zoekwaarde verwerken

De aangepaste formule zoekt op samengevoegde naam en voornaam in de help kolom. Door middel van het “&” teken wordt de naam en voornaam samengevoegd, de formule ziet er als volgt uit:

= VERT.ZOEKEN ( C3&D3; data; 4; 0 )

22. Twee Verticaal Zoeken is sneller dan één Verticaal Zoeken

Het klinkt misschien gek maar als je een groot bereik met gegevens hebt en een exacte overeenkomst zoekt, kun je VERT.ZOEKEN sneller maken door er nog een VERT.ZOEKEN formule aan toe te voegen.

Stel; je hebt een tabel met veel bestellingen, zeg meer dan 10.000 records en je gebruikt VERT.ZOEKEN om een order_totaal te vinden op basis van een order_id. Dan is je formule zoiets als:

= VERT.ZOEKEN ( order_id; order_totaal; 7; ONWAAR )

De ONWAAR aan het einde dwingt VERT.ZOEKEN om een exacte overeenkomst te vinden. Je wilt een exacte overeenkomst omdat er een kans is dat het order nummer niet wordt gevonden. In dat geval zorgt de exacte overeenkomst voor een foutmelding #N/B.

Zoeken met een exacte overeenkomst is traag omdat Excel p een lineaire manier door alle waarden moet gaan totdat het een overeenkomst vindt of niet.

Omgekeerd zijn niet exacte overeenkomsten razendsnel omdat Excel in staat is om een zogenaamde binaire zoekactie uit te voeren.

Het probleem met binaire zoekopdrachten is dat VERT.ZOEKEN het verkeerde resultaat kan retourneren wanneer een waarde niet wordt gevonden. Erger nog, het resultaat ziet er misschien heel normaal uit, waardoor het niet op valt dat het niet juist is.

De oplossing is om verticaal zoeken tweemaal te gebruiken, beide keren in de niet exacte zoek modus. In eerste instantie controleert de functie dat de waarde echt bestaat. Als dat het geval is, wordt een andere verticaal zoeken uitgevoerd (wederom in niet exacte modus, dus WAAR) om de gewenste gegevens op te halen. Als dat niet het geval is, kun je elke waarde retourneren die je wilt aangeven als resultaat als er geen match is.

De formule ziet er dan als volgt uit:

= ALS ( VERT.ZOEKEN ( order_id; order_totaal; 7; WAAR) = order_id;
  VERT.ZOEKEN ( order_id; order_totaal; 7; WAAR ); "order onbekend")

Als de order_id is gevonden gaat de volgende VERT.ZOEKEN functie zoeken naar de waarden. Is er geen order_id gevonden zal de waarde “order onbekend” worden geretourneerd.

Let op: De gegevens moeten oplopend zijn gesorteerd om deze truc te gebruiken.

23. INDEX en VERGELIJKEN kunnen samen alles doen wat VERT.ZOEKEN kan, en nog meer

In essentie kan INDEX en VERGELIJKEN alles doen dat verticaal zoeken kan doen, maar met meer flexibiliteit ten koste van een beetje meer complexiteit. Voorstanders van INDEX + VERGELIJKEN zullen beweren dat je net zo goed kunt beginnen met INDEX en VERGELIJKEN te leren, omdat het uiteindelijk meer flexibel is.

Het argument tegen INDEX en VERGELIJKEN is dat je twee functies nodig hebt in plaats van één dus het is complexer en lastiger voor nieuwe gebruikers om te leren beheersen.

In mijn optiek zou je beide mogelijkheden moeten leren omdat je te maken kunt hebben met verschillende wensen per zoek opdracht. Met eenvoudige zoek wensen kom je goed weg met verticaal zoeken .

Lees meer over informatie over gebruik van INDEX en VERGELIJKEN.

~ Advertentie ~
Theo Schipper
Theo Schipper
Mijn twee grote hobby's zijn Excel en WordPress. Deze twee gecombineerd heeft Excel.wiki als resultaat gebracht. Ik beschouw mezelf zeker geen Excel of WordPress expert maar gewoon een enthousiaste hobbyist. Het doel van Excel.wiki is om te informeren en praktische tips te delen.

Related Articles

8 REACTIES

  1. Beste heer Schipper,
    Dank voor deze uitleg. Toch nog een vraag.
    Ik werk aan een bestand waarin ik duizenden rijen onder elkaar heb staan, en steeds de waarde van één bepaalde cel (in een vaste kolom) wil opzoeken in identieke kolommen van steeds wisselende tabbladen (in totaal zo'n 20 stuks). In plaats van steeds de naam van de map waarin gezocht moet worden handmatig te moeten wijzigen, zou ik graag de naam kunnen ophalen uit een cel. M.a.w. de formule zou dan ongeveer zijn: vert.zoeken(B4;'xyz'!L:P;5;onwaar) waarbij ik de xyz graag zou willen vervangen door te verwijzen naar een andere cel (bijv. C4). Is dit mogelijk en hoe zou dit in zijn werk gaan?

    Alvast hartelijk dank voor de moeite!

  2. Geachte heer Schipper,

    Hobbymatig repareer ik scooters.
    Ik heb een onderdelenlijst aangemaakt welke ik met een barcodescanner kan bedienen.
    Gaat het zoekgebied van verticaal zoeken maar tot 100 regels?
    Als ik meer dan 100 onderdelen aan de lijst toevoeg, vind hij ze niet meer.
    Is dit te verhelpen?

  3. Ik wilde graag ook aanpassingen kunnen doen via het zoekformulier. Ik maak gebruik van de nieuwere x.zoeken, maar deze is nagenoeg hetzelfde. Wanneer ik een van de geretourneerde waardes verander, vervangt deze de formule. Ik wil dat deze de gegevens uit de bron overschrijven. De gegevens komen uit een ander blad.

  4. Voor wat ik heb opgemerkt is dat VERT.ZOEKEN je bestandsgrote nog groter maakt als je zoekt in andere bestanden. Het beste is om INDEX & VERGELIJKEN functie te gerbruiken! veel soepeler & bestandsgrote wordt niet zo groot.

  5. Bovenstaande reacties sluit ik mij bij aan. TOP. Toch een vraagje; Kan je dmv verticaal zoeken ook rijen samenvoegen als de waarde in kolom 1 hetzelfde is maar er in iedere andere kolom een enkele waarde staat zodat de rijen samen worden gevoegd op de overeenkomstige waarde in kolom 1.

    Voorbeeld:
    Kolom 1 Kolom 2 Kolom 3
    Piet Goed
    Gijs Voldoende
    Piet Goed
    Gijs Voldoende

    Bovenstaande moet worden:

    Kolom 1 Kolom 2 Kolom 3
    Piet Goed Goed
    Gijs Voldoende Voldoende

    Misschien moet bovenstaande helemaal niet met ver.zoeken maar misschien heeft u de oplossing.

    Ben benieuwd

    Vriendelijke groet,

    Paul

  6. Zo systematisch en duidelijk uitgelegd dat ik in de mij beschikbare boeken nog niet tegengekomen ben. Subliem! Hartelijk dank.

LAAT EEN REACTIE ACHTER

Vul alstublieft uw commentaar in!
Vul hier uw naam in

0FansLike
2VolgersVolg
0AbonneesAbonneer
~ Advertentie ~

Meer voorbeelden

~ Advertentie ~