Haal de eerste overeenkomende waarde op in een cel ten opzichte van een lijst
Stel dat je een lijst met trefwoorden hebt, om het eerste trefwoord op te halen dat in een specifieke cel voorkomt, terwijl de cel verschillende andere waarden bevat, dan moet je een INDEX- en MATCH-formule gebruiken met behulp van de functies AGGREGATE en SEARCH.
Hoe haal je de eerste overeenkomende waarde op in een cel ten opzichte van een lijst?
Om het eerste overeenkomende trefwoord in een cel te vinden ten opzichte van de lijst met trefwoorden zoals in de bovenstaande tabel, betekent dit dat we een gedeeltelijke overeenkomst moeten uitvoeren in plaats van een exacte overeenkomst. Om dit te doen, kun je de functie SEARCH gebruiken om de posities van de trefwoorden die in de cel voorkomen als numerieke getallen door te geven aan de functie AGGREGATE. Vervolgens zal AGGREGATE het kleinste getal ophalen door zijn function_num in te stellen op 15 en het ref2-argument op 1. Gebruik vervolgens MATCH om de eerste kleinste waarde te lokaliseren en geef het positienummer door aan INDEX om de waarde op die positie op te halen.
Algemene syntaxis
=INDEX(keyword_rng,MATCH(AGGREGATE(15,6,SEARCH(keyword_rng,lookup_cell),1),SEARCH(keyword_rng,lookup_cell),0))
√ Opmerking: Dit is een matrixformule die vereist dat je deze invoert met Ctrl + Shift + Enter.
- keyword_rng: Het bereik van cellen met trefwoorden.
- lookup_cell: De cel om te controleren of deze de trefwoorden bevat.
Om het eerste overeenkomende trefwoord dat in cel B5 voorkomt ten opzichte van de kolom Trefwoorden op te halen, kopieer of voer de onderstaande formule in cel C5 in en druk op Ctrl + Shift + Enter om het resultaat te krijgen:
=INDEX($E$5:$E$7,MATCH(AGGREGATE(15,6,SEARCH($E$5:$E$7,B5),1),SEARCH($E$5:$E$7,B5),0))
√ Opmerking: De dollartekens ($) hierboven geven absolute verwijzingen aan, wat betekent dat de keyword_rng in de formule niet verandert wanneer je de formule naar andere cellen verplaatst of kopieert. Er zijn echter geen dollartekens toegevoegd aan de lookup_cell omdat je wilt dat deze dynamisch blijft. Nadat je de formule hebt ingevoerd, sleep je de vulgreep naar beneden om de formule op de onderliggende cellen toe te passen.
Uitleg van de formule
=INDEX($E$5:$E$7,MATCH(AGGREGATE(15,6,SEARCH($E$5:$E$7,B5)SEARCH($E$5:$E$7,B5),1),SEARCH($E$5:$E$7,B5)SEARCH($E$5:$E$7,B5),0))
- SEARCH($E$5:$E$7,B5): De functie SEARCH retourneert de positie van elk trefwoord uit het bereik $E$5:$E$7 wanneer het wordt gevonden in numerieke getallen, en de fout #WAARDE! indien niet gevonden. Het resultaat zou in een array zijn zoals deze: {15;11;#WAARDE!}.
- AGGREGATE(15,6,AGGREGATE(15,6,SEARCH($E$5:$E$7,B5),1),1) = AGGREGATE(15,6,AGGREGATE(15,6,{15;11;#WAARDE!},1),1): De functie AGGREGATE met een function_num van 15 en optie van 6 retourneert de kleinste waarde in de array volgens het ref2-argument 1, terwijl foutwaarden worden genegeerd. Dus, het fragment zou 11 retourneren.
- MATCH(MATCH(AGGREGATE(15,6,SEARCH($E$5:$E$7,B5)SEARCH($E$5:$E$7,B5),1),,SEARCH($E$5:$E$7,B5)SEARCH($E$5:$E$7,B5),0),0) = MATCH(MATCH(11,,{15;11;#WAARDE!},0),0): De match_type 0 dwingt de functie MATCH om een exacte overeenkomst uit te voeren en retourneert de positie van 11 in de array {15;11;#WAARDE!}. Dus, de functie zal 2 retourneren.
- INDEX($E$5:$E$7,MATCH(AGGREGATE(15,6,SEARCH($E$5:$E$7,B5)SEARCH($E$5:$E$7,B5),1),SEARCH($E$5:$E$7,B5)SEARCH($E$5:$E$7,B5),0)) = INDEX($E$5:$E$7,2): De functie INDEX retourneert vervolgens de 2e waarde in het bereik $E$5:$E$7, wat bbb is.
Opmerking
- Als er geen trefwoorden in een cel staan, wordt een foutmelding #GETAL! geretourneerd.
- De formule is niet hoofdlettergevoelig. Om een hoofdlettergevoelige overeenkomst uit te voeren, kun je eenvoudig de functie SEARCH vervangen door FIND.
Gerelateerde functies
De Excel INDEX-functie retourneert de weergegeven waarde op basis van een gegeven positie uit een bereik of een array.
De Excel MATCH-functie zoekt naar een specifieke waarde in een bereik van cellen en retourneert de relatieve positie van de waarde.
In Excel kan de functie SEARCH helpen om de positie van een specifiek teken of substring te vinden vanuit de gegeven tekststring zoals in de onderstaande schermafbeelding te zien is. In deze tutorial introduceer ik hoe je deze SEARCH-functie in Excel kunt gebruiken.
De Excel AGGREGATE-functie retourneert een aggregatie van berekeningen zoals SOM, AANTAL, KLEIN enzovoort, met de mogelijkheid om fouten en verborgen rijen te negeren.
Gerelateerde formules
Haal de eerste lijstwaarde op uit een cel
Om het eerste trefwoord dat in een bereik staat op te halen uit een specifieke cel, terwijl de cel één van meerdere waarden bevat, moet je een vrij complexe matrixformule gebruiken met de functies INDEX, MATCH, ISNUMBER en SEARCH.
Exacte overeenkomst met INDEX en MATCH
Als je informatie wilt vinden die in Excel staat over een specifiek product, film of persoon, enz., moet je goed gebruik maken van de combinatie van INDEX- en MATCH-functies.
Controleer of een cel een specifieke tekst bevat
Hier biedt de tutorial enkele formules om te controleren of een cel een specifieke tekst bevat en retourneert WAAR of ONWAAR zoals in de onderstaande schermafbeelding te zien is, en legt hij de argumenten uit en hoe de formules werken.
Controleer of een cel alles van veel dingen bevat
Stel dat er in Excel een lijst met waarden in kolom E staat, en je wilt controleren of de cellen in kolom B alle waarden in kolom E bevatten en WAAR of ONWAAR retourneren zoals in de onderstaande schermafbeelding te zien is. In deze tutorial wordt een formule aangeboden om deze taak op te lossen.
Controleer of een cel één van veel dingen bevat
Deze tutorial biedt een formule om te controleren of een cel één van meerdere waarden in Excel bevat, en legt hij de argumenten in de formule uit en hoe de formule werkt.
De Beste Office-productiviteitstools
Kutools voor Excel - Helpt U Om Uit Te Blinken In De Menigte
Kutools voor Excel Beschikt Over Meer Dan 300 Functies, Waardoor Wat U Nodig Hebt Maar Een Klik Verwijderd Is...
Office Tab - Schakel Tabbladgestuurd Lezen en Bewerken in Microsoft Office (inclusief Excel)
- Eén seconde om te schakelen tussen tientallen open documenten!
- Verminder honderden muisklikken voor u elke dag, zeg vaarwel tegen muisarm.
- Verhoogt uw productiviteit met 50% bij het bekijken en bewerken van meerdere documenten.
- Brengt Efficiënte Tabbladen naar Office (inclusief Excel), Net Als Chrome, Edge en Firefox.