De functie X.ZOEKEN gebruiken

De functie X.ZOEKEN is de opvolger van VERT.ZOEKEN en HORIZ.ZOEKEN.

In de vorige lessen heb je kunnen zien dat verticaal/horizontaal zoeken handige functies zijn, maar ook zo hun beperkingen hebben.

In deze les leer je hoe je deze nieuwe functie kunt gebruiken en waarom het een verbetering is ten opzichte van de oude functies.

De functie X.ZOEKEN is alleen beschikbaar als je Microsoft 365 gebruikt.

Op het eerste gezicht lijkt deze functie vrij ingewikkeld omdat het veel argumenten (kan) bevatten. Als je het eenmaal door hebt zal je al gauw zien dat het in de praktijk juist eenvoudiger is dan VERT.ZOEKEN (en HORIZ.ZOEKEN).

Hoe schrijf je de formule

=X.ZOEKEN(zoekwaarde; zoeken-matrix; matrix_retourneren; [indien_niet_gevonden]; [overeenkomstmodus]; [zoekmodus]) 

Argumenten

zoekwaardeVul hier de waarde in waarnaar gezocht moet worden.
zoeken-matrixVul hier de matrix of het bereik in waarin Excel moet zoeken.
matrix_retournerenVul hier de matrix of het bereik in waarin de waarde staat die geretourneerd moet worden.

Daarnaast heeft deze functie nog 3 optionele argumenten:

[indien_niet_gevonden]

Hier kun je een waarde invoeren die getoond moet worden als de functie geen match kan vinden. Als je dit argument leeg laat en er wordt geen match gevonden, wordt er een foutmelding getoond.

[overeenkomstmodus]
Met dit argument kun je aangeven wat voor type overeenkomst je wilt gebruiken. Typ een 0, -1, 1 of 2:

  • 0 (exacte match)
  • -1 (exacte match of het volgende kleinere item)
  • 1 (exacte match of de het volgende grotere item)
  • 2 (een match met een jokerteken)

Dit argument is optioneel. Als je niets invoert wordt er uit gegaan van een 0 (exacte match).

[zoekmodus]
Met dit argument kun je aangeven op welke manier er gezocht moet worden. Typ een 1, -1, 2 of -2:

  • 1 (Excel zoekt vanaf het eerste item)
  • -1 (Excel zoekt vanaf het laatste item)
  • 2 (Excel doet een binaire zoekopdracht die in oplopende volgorde is gesorteerd)
  • -2 (Excel doet een binaire zoekopdracht die in aflopende volgorde is gesorteerd)

Dit argument is optioneel. Als je niets invoert wordt er uit gegaan van een 1 (Excel zoekt vanaf het eerste item)

Hoe werkt deze functie:

In de les over verticaal zoeken werd het onderstaande voorbeeld gebruikt. Aan de hand van een klantnummer wordt de bijbehorende woonplaats gezocht.

Dit was een eenvoudig voorbeeld en hoewel verticaal zoeken prima gebruikt kon worden, zal ik je laten zien waarom het met X.ZOEKEN nog gemakkelijker kan.

Stap 1:

  • Selecteer de cel waarin de formule geschreven wordt: cel C11.
  • Typ =X.ZOEKEN( om de formule te beginnen

Stap 2:

  • De zoekwaarde wordt ingevoerd in cel C10. Voer daarom in het eerste argument de celverwijzing C10 in.
  • Typ een puntkomma (;) om naar het volgende argument te gaan.

Stap 3:

  • Voor het argument zoeken-matrix moet het celbereik ingevoerd worden waarin de klantnummers staan: B3:B8
  • Typ een puntkomma (;) om naar het volgende argument te gaan.

Stap 4:

  • Voor het argument matrix_retourneren moet het celbereik ingevoerd worden waarin de woonplaatsen staan: E3:E8
  • De argumenten die hierna volgen zijn optioneel. Typ een haakje ) om de formule te sluiten of een puntkomma (;) om naar het volgende argument te gaan.

Stap 5 (optioneel):

Je hoeft nu niet langer de ALS.FOUT functie te gebruiken om eventuele foutmeldingen te voorkomen. In het optionele argument [indien_niet_gevonden] kan je invoeren wat er moet gebeuren wanneer de functie X.ZOEKEN geen match kan vinden. Ik kies ervoor om de tekst Niet beschikbaar te tonen.

De argumenten die hierna volgen zijn optioneel. Typ een haakje ) om de formule te sluiten of een puntkomma (;) om naar het volgende argument te gaan.

Stap 6 (optioneel):

Met het argument [overeenkomstmodus] kun je aangeven wat voor type overeenkomst je wilt gebruiken.

In dit voorbeeld zijn we op zoek naar een exacte match. Bij de functie VERT.ZOEKEN gaat Excel er vanuit als je niets invoert dat je een benadering wilt doen.

Bij de functie X.ZOEKEN is de standaard echter 0 (een exacte match). Dit is hetgeen wat we willen in dit voorbeeld dus je kunt een 0 invullen of het argument leeglaten. Ik kies voor het laatste.

Wil je een benadering (zoals in het tweede voorbeeld in de les over VERT.ZOEKEN met bedragen en commissies)? Dan moet je in dit argument een -1 of 1 typen afhankelijk of je het volgende kleinere of grotere item wilt als er geen match is gevonden.

Stap 7 (optioneel):

De zoekopdracht moet beginnen vanaf het eerste item. Dit is de standaard in Excel. Je kunt dit argument daarom een 1 invoeren of het argument leeglaten. Ik kies voor het laatste.

Meerdere waarden retourneren

Het is met deze functie ook mogelijk om meerdere waarden te retourneren.

Je voert hierbij in 1 cel de formule zoals je gewend bent. De formule bevat ook 1 zoekwaarde (het eerste argument).

Je moet alleen het celbereik van het argument matrix_retourneren aanpassen.

Stel je wilt de voornaam, achternaam, woonplaats en telefoonnummer weten als je het klantnummer invoert.

  • De formule vul je in dit voorbeeld in cel C11.
  • De zoekwaarde (het klantnummer) kun je invullen in cel B11
  • Het argument zoeken-matrix blijft B3:B8, in dit celbereik moet namelijk gezocht worden naar het juiste klantnummer.
  • Het enige verschil is dat de matrix_retourneren veranderd in C3:F8. In dit celbereik staat alle data die opgehaald moet worden.

De data wordt net zo opgehaald als hoe het in de zoeken-matrix staat. Als daar de informatie horizontaal is weergegeven, dan retourneert de formule meerdere waarden ook horizontaal.

Houd hier dus rekening mee bij het opmaken van de gegevens, anders kun je zoiets als onderstaand krijgen:

Wil je alleen de voornaam en achternaam ophalen? Dan verander je het argument matrix_retouneren in C3:D8

Voordelen X.ZOEKEN

Het voordeel van de functie X.ZOEKEN is dat je niet langer een hele Tabelmatrix hoeft te selecteren en daarna moet invoeren wat het Kolomindex_getal (of Rijindex_getal) is.

Zoals je hebt gezien hoef je nu alleen het celbereik te selecteren met de waardes waar je op wilt zoeken en een celbereik die de zoekwaarden bevat.

Een bijkomend voordeel hiervan is dat je niet langer beperkt bent doordat je perse naar rechts moet zoeken.

Je kunt nu bijvoorbeeld op achternaam zoeken en Excel daar het klantnummer voor retourneren:

Met VERT.ZOEKEN moet je de hele tabelmatrix selecteren waarbij de eerste kolom de zoekwaarden bevat. Omdat achternaam rechts van het klantnummer staat kun je niet naar links zoeken om het klantnummer te retourneren.