Uitgebreide zoekfunctie in Excel: X.Zoeken
Wie in Excel gebruik maakt van verticaal zoeken, VERT.ZOEKEN( ), of andere zoekfuncties, kan blij worden van de functie X.ZOEKEN( ). De functie X.ZOEKEN() is een van de latere toevoegingen aan de rijke verzameling van zoekfuncties in Excel, zoals beschikbaar binnen Microsoft 365 en de online versie van Excel. Wil jij graag meer leren over Excel? Volg dan bij AVK een Excel training.
Al sinds de vroege dagen van Excel bestaat bij gebruikers de wens om informatie op te halen uit gegevenslijsten op basis van een identificatiecode, de zoekwaarde genaamd.
Zo wil je bijvoorbeeld bij een personeelsnummer van een medewerker de NAW-gegevens kunnen ophalen uit een personeelslijst. Daarvoor heeft Excel verschillende zoekfuncties beschikbaar gesteld. Ik beschrijf er een paar:
De functie Zoeken in Excel
In oudere versies was de functie ZOEKEN( ) beschikbaar. Met Zoeken kun je bij een gegeven waarde (de zoekwaarde) een bijbehorende waarde ophalen uit een andere kolom. De functie is omwille van de compatibiliteit met oudere werkmappen in nieuwere versies van Excel gehandhaafd, maar was beperkt in mogelijkheden en had een paar strikte voorwaarden voor gebruik. Zoals de eis dat als je gegevens ging ophalen uit een tabelmatrix dat die tabelmatrix dan oplopend gesorteerd moest zijn, anders kon de functie zijn werk niet goed doen.
Beter zoeken met Verticaal zoeken in Excel
Een verbetering trad op met de introductie van VERT.ZOEKEN( ) en met HOR.ZOEKEN( ) als gespiegelde variant ervan. Met VERT.ZOEKEN() in plaats van Zoeken ben je niet langer gebonden aan de voorwaarde dat de gegevenslijst (de tabelmatrix) gesorteerd moet zijn.
Voor vele Excelgebruikers is verticaal zoeken bekend terrein. Bij verticaal zoeken naar gegevens uit een prijslijst mogen de productcodes bij het zoeken naar een overeenkomstige waarde in de kolom gerust door elkaar staan als je de bijbehorende productnaam of prijs wilt ophalen uit een van de andere kolommen van de lijst. En je kunt met een nummer aangeven uit de hoeveelste kolom je dat ophalen wilt laten gebeuren. Minder bekend is dat verticaal zoeken ook gebruikt kan worden in de benaderingsmodus, wat inhoudt dat je ook kunt zoeken binnen intervallen tussen grenswaarden. Meer mogelijkheden, flexibeler en beter dan Zoeken. Populair uitgedrukt zou je VERT.ZOEKEN() ook wel Zoeken 2.0 kunnen noemen.
Verticaal zoeken wordt als functie zeer vaak toegepast in de werkmappen van Excel. De functie maakt het mogelijk om gegevens uit verschillende lijsten aan elkaar te koppelen. Om bij elkaar horende gegevens te verzamelen in één tabel. Bijzonder nuttig, zeker weten. Maar je dient er bij verticaal zoeken wel rekening mee te houden dat de opzoekwaarde altijd in de meest linkse kolom van de tabelmatrix moet worden gezocht om de functie correct te laten werken. En juist die eis is mogelijk een obstakel.
Zo kun je in de hiernaast afgebeelde prijslijst verticaal zoeken gebruiken als je van een code de bijbehorende productnaam wilt ophalen. Dus uit een van de kolommen rechts ervan (zie ook de afbeelding hieronder). Maar verticaal zoeken naar links kan niet. Je kunt met deze indeling niet bij een productnaam de productcode ophalen. Daarvoor zou je eerst de productnamen vooraan moeten zetten.
Uitgebreider zoeken met X.Zoeken
X.ZOEKEN() zou je Zoeken 3.0 kunnen noemen. De functie X.ZOEKEN() kan ook zoeken naar informatie in kolommen links van de opzoekwaarden. En nog meer mogelijkheden zijn toegevoegd. Allemaal door jou in te stellen.
In cel G14 wordt X.ZOEKEN() gebruikt om van de productnaam ‘pindakaas’ de productcode op te halen uit de prijslijst:
Syntax van de zoekfunctie
De functie X.ZOEKEN( ) heeft de volgende syntax:
=X.ZOEKEN(item; zoekbereik; ophaalbereik;
[alternatief]; [Overeenkomstmodus]; [zoekmodus])
Beschrijving van de argumenten:
- item/zoekwaarde waar je gegevens over gaat opzoeken
- zoekbereik het bereik waarin je het item gaat zoeken
- ophaalbereik het bereik waaruit je de gegevens gaat ophalen
Optioneel kunnen daaraan nog drie andere argumenten worden ingevoerd:
Met ‘Overeenkomstmodus’ ingesteld op 0 (‘nul’, onwaar) zoek je naar een exacte overeenkomst. Met het argument ‘alternatief’ kun je een alternatief resultaat aanbieden om een eventuele foutmelding te omzeilen, als het gezochte item niet wordt gevonden. Een zesde en laatste argument ‘zoekmodus’ is bedoeld om de zoekvolgorde te bepalen.
Matrixfunctie
Het gaat nog een stapje verder. In tegenstelling tot Vert.zoeken kan X.zoeken een matrix met meerdere items retourneren, zodat één formule de naam én de prijs kan ophalen van een gezochte productcode. Dan hoef je voor het ophalen van de naam en de prijs niet twee aparte formules te maken.
Samenvattend:
De nieuwe functie X.ZOEKEN( ) kan wat VERT.ZOEKEN( ) kan, en meer.
- X.ZOEKEN( ) kan bij benadering zoeken.
- X.ZOEKEN( ) kan foutmeldingen onderdrukken.
- X.ZOEKEN( ) kan naar links zoeken.
- X.ZOEKEN( ) kan meerdere items in een keer ophalen.
Daarmee is deze functie een bruikbare toevoeging aan de zoekmogelijkheden in Excel.
Tot slot nog een paar opmerkingen
- Lookup: Voor wie de Engelstalige interface van Excel gebruikt:
ZOEKEN( ) heet in het Engels LOOKUP( ); VERT.ZOEKEN( ) heet VLOOKUP( ), en X.ZOEKEN( ) heet XLOOKUP( ). - Het aanduiden van het juiste kolomnummer in Vert.zoeken (het kolomindex-getal) kan bij grote lijsten met veel kolommen wat frustrerend zijn. Dit is op te lossen door binnen de functie het kolomnummer te laten ophalen met de functie VERGELIJKEN( ). In het Engels is dat MATCH( ).
Er is ook een X-variant toegevoegd van de functie VERGELIJKEN, X.VERGELIJKEN( ) genoemd. XMATCH( ) in het Engels. - Naast bovengenoemde zoekfuncties is er ook de functie INDEX( ). Ook die kan ook zeer praktisch zijn voor het ophalen van gegevens uit grote lijsten, maar deze kent in tegenstelling tot VERT.ZOEKEN( ) en X.Zoeken( ) geen benaderingsmodus.
Heb je nog vragen? Wij helpen je graag!
Dick van der Boor
AVK Trainer en Excel Expert
Volg ons