Office 2007 - Excel Tips 2007 - 2013

Tip 053

053/207 Lessen 

Verticaal zoeken, zoeken of index en vergelijken?

In gratis cursus Excel  les 37 wordt de functie verticaal zoeken uitgelegd, maar deze methode heeft een nadeel nl. ze kan alleen een waarde zoeken in een kolom die zich rechts bevind van de vooraf gedefinieerde waarde in een kolom, als we links van de gedefinieerde waarde moeten zoeken kunnen we de functie verticaal zoeken niet gebruiken.
Om een waarde op te zoeken die ten opzichte van een gedefinieerde waarde in een linkerkolom gelegen is kunnen we de functie ZOEKEN (we gebruiken in dit voorbeeld de vectorvariant, er is nl ook een matrixvariant))toepassen.

De functie ZOEKEN met de vectorvariant: Een vector is een bereik dat slechts uit één rij of kolom bestaat. De vectorvariant van ZOEKEN zoekt in een bereik dat één rij of één kolom bevat (een zogenaamde vector) naar een waarde, gaat naar de overeenkomstige positie in een tweede vector, en geeft deze waarde als resultaat. Gebruik deze variant van de functie ZOEKEN wanneer u een bereik wilt opgeven dat de waarden bevat waarnaar moet worden gezocht. De andere variant van ZOEKEN zoekt automatisch in de eerste kolom of rij.

De syntaxis van de vectorvariant van de functie ZOEKEN heeft de volgende argumenten:
zoekwaarde   is verplicht. Een waarde die ZOEKEN in de eerste vector moet zoeken. Zoekwaarde kan een getal zijn, een tekst, een logische waarde, of een naam of verwijzing naar een waarde.zoekvector   is verplicht. Een cellenbereik dat slechts één rij of één kolom bevat. De waarden in zoekvector kunnen tekstwaarden, getallen of logische waarden zijn.

Belangrijk
De waarden in zoekvector moeten een oplopende volgorde hebben (…;-2; -1; 0; 1; 2;…; A-Z; ONWAAR; WAAR), anders kan ZOEKEN een onjuist resultaat geven. Bij tekstwaarden wordt geen onderscheid gemaakt tussen hoofdletters en kleine letters.

resultaatvector   is optioneel. Een cellenbereik dat slechts één rij of één kolom bevat. Het argument resultaatvector moet even groot zijn als zoekvector.

In onderstaand  eenvoudig voorbeeld (voorbeeldbestand blad 1) hebben we een kolom genoemd “Letters” en een kolom genoemd “Cijfers”, we willen opzoeken welke letter hoort bij welk cijfer.

We typen in cel F3 de formule: =ZOEKEN(E3;C3:C10;B3:B10)
De eerste parameter die we moeten opgeven is zoekwaarde, we verwijzen voor de zoekwaarde naar E3.
De tweede parameter is de zoekvector, de cellen C3 tot en met C10.
De derde parameter is de resultaatvector, dit zijn de cellen B3 tot en met B10. (denk er aan dat de resultaatvector even groot moet zijn als zoekvector)

Wanneer we nu in cel E3 een cijfer typen, bv. 4 dan krijgen we als resultaat D

Deze formule geeft  een fout resultaat (voorbeeldbestand blad 2) wanneer de waarden in de zoekvectoreen niet oplopende volgorde hebben, we kunnen dus bij een niet oplopende volgorde deze eerst sorteren om de formule een correct resultaat te laten weergeven.

Wanneer we echter niet kunnen (of niet mogen ) sorteren moeten we gebruik maken van een ander formule nl. een formule die we samenstellen met de functies INDEX en VERGELIJKEN.
(voorbeeldbestand blad 3)

We gaan de functies =INDEX en =VERGELIJKEN gebruiken om gegevens uit het bereik “Letters” op te vragen.

De functie = INDEX kent twee varianten nl. de verwijzingsvariant en de matrixvariant, we gaan in dit voorbeeld de verwijzingsvariant gebruiken.

=INDEX(verwijzing; rij_getal; [kolom_getal]; [bereik_getal]) geeft als resultaat de verwijzing naar de cel op het snijpunt van een bepaalde rij en kolom.

De eerste parameter “verwijzing”  ( is verplicht) verwijst  naar één of meer cellenbereiken (in ons voorbeeld is het celbereik “Bedragen”).

De tweede parameter “rij getal” (is verplicht)  geeft het nummer van de rij in de verwijzing  waaruit een waarde moet worden opgehaald.

De derde parameter “kolom getal” (is optioneel) geeft  het nummer van de kolom in de verwijzing waaruit een waarde moet worden opgehaald.

De vierde parameter “bereik getal” (is optioneel) selecteert een bereik in de verwijzing waaruit het snijpunt van rij_getal en kolom_getal moet worden opgehaald.

We typen in cel F3 de formule: =INDEX(B3:B10;VERGELIJKEN(E3;C3:C10;0))

De eerste parameter “verwijzing” is het cellenbereik waaruit we de waarde willen ophalen (cellen B3 tot en met B10).
De tweede parameter “rij getal” gaan we bepalen met de functie Vergelijken (De functie VERGELIJKEN zoekt  naar een opgegeven item in een bereik van cellen en wordt de relatieve positie van dat item in het bereik als resultaat gegeven, deze functie heeft drie parameters,
Zoekwaarde    Verplicht. De waarde die u wilt vergelijken in zoekmatrix, zoekwaarde kan een waarde zijn (een getal, tekst of logische waarde), of een celverwijzing naar een getal, tekst of logische waarde.

Zoeken-matrix    Verplicht. Het cellenbereik waarin wordt gezocht.

Criteriumtype_getal    Optioneel. Het getal -1, 0 of 1. Het argument criteriumtype_getal geeft aan hoe zoekwaarde moet worden vergeleken met de waarden in zoeken-matrix. De standaardwaarde voor dit argument is 1.
criteriumgetal 1 of weggelaten zoekt naar de grootste waarde die kleiner is dan of gelijk is aan zoekwaarde. De waarden in het argument zoeken-matrix moeten in oplopende volgorde zijn gesorteerd, bijvoorbeeld …-2, -1, 0, 1, 2, …, A-Z; ONWAAR; WAAR.
criteriumgetal 0 zoekt naar de eerste waarde die exact gelijk is aan zoekwaarde. De waarden in het argument zoeken-matrix mogen in willekeurige volgorde zijn gesorteerd.
criteriumgetal -1 zoekt naar de kleinste waarde die groter is dan of gelijk is aan zoekwaarde. De waarden in het argument zoeken-matrix moeten in aflopende volgorde zijn gesorteerd, bijvoorbeeld WAAR, ONWAAR, Z-A, …2, 1, 0, -1, -2, …, enzovoorts ).

We zoeken dus de positie van de eerste waarde die exact gelijk is aan zoekwaarde  van cel E3 in het gebied C3 tot en met C10.

In het voorbeeldbestand blad 4 tot en met blad 8 vind je nog andere voorbeelden van  ZOEKEN  en Index in combinatie met Vergelijken.

Ter informatie: swotster.com denkt aan zijn cursisten, denk ook aan swotster.com

Formidabel U hebt Tip 053 voltooid START VOLGENDE LES