• Privacywetgeving
    Het is bij Helpmij.nl niet toegestaan om persoonsgegevens in een voorbeeld te plaatsen. Alle voorbeelden die persoonsgegevens bevatten zullen zonder opgaaf van reden verwijderd worden. In de vraag zal specifiek vermeld moeten worden dat het om fictieve namen gaat.

Regels in excel categoriseren

Status
Niet open voor verdere reacties.

Jwitte

Gebruiker
Lid geworden
20 mrt 2019
Berichten
31
Beste allen,

Ik heb een vraag over hoe ik regels in excel kan categoriseren obv verschillende voorwaarden. Zie bijgevoegd bestand voor een fictief voorbeeld.

Kolom A-C krijg ik als gegevens dmv een export (Kolom F heb ik nu zelf toegevoegd om te laten zien wat de gewenste resultaten zijn per regel)
Kolom D moet ingevuld worden obv voorwaarden. Deze voorwaarden staan in kolom L-O.

Ik zoek een methode om de cellen in kolom D automatisch aan te vullen met de categorie die staat in kolom O.

Daarnaast wil ik graag dat de voorwaarden (kolom L-O) aangevuld kunnen worden met nieuwe voorwaarden en dat deze automatisch meegomen wordt bij de bepaling van kolom D ZONDER dat ik de formule/matrix/Macro in kolom D hoef aan te passen.

Hopelijk is mijn vraag duidelijk, anders hoor ik dat graag!

Gr

Job
 

Bijlagen

  • voorbeeldvraag case.xlsx
    10,8 KB · Weergaven: 54
Normaal gesproken zou je met Vert.Zoeken een eind moeten komen, maar jouw zoektekst is niet simpel terug te vinden in je zoektabel. Dat zul je dus op een ingewikkelde manier moeten doen. Wellicht iets met Instr. om de omschrijving van kolom N in je zoekopdracht te krijgen.
 
Dag Octa en Alex,
Dank voor jullie snelle antwoord.

@alex dit komt al ******* dicht in de buurt van wat ik wil! er moet alleen nog 1 voorwaarde worden toegevoegd, namelijk of het woord in kolom N ook voorkomt in kolom D.

Online heb ik gezien dat je kan zoeken met de SEARCH functie. Is deze extra voorwaarde er ook in te bouwen?
 
(Had mijn vorige oplossing verwijderd omdat ik bovenstaande ook al geconstateerd had).

Deze in D2?
Code:
=ALS.FOUT(INDEX(O:O;1/(1/SOMPRODUCT(($L$2:$L$100=$A2)*($M$2:$M$100=$B2)*ISGETAL(VIND.SPEC(SUBSTITUEREN($N$2:$N$100;" ";"");$C2))*RIJ($2:$100))));"XXXXX")
Er staan wat spaties achter de termen in kolom N, die de formule extra compliceren...
 
Hij werkt perfect! Ontzettend bedankt.

Verandert de formule aanzienlijk als de spaties achter de woorden in kolom N worden verwijderd? Dit was namelijk per ongeluk zo gegaan
 
Zonder spaties achter de zoektermen wordt het:
Code:
=ALS.FOUT(INDEX(O:O;1/(1/SOMPRODUCT(($L$2:$L$100=$A2)*($M$2:$M$100=$B2)*ISGETAL(VIND.SPEC($N$2:$N$100;$C2))*RIJ($2:$100))));"XXXXX")
 
Zonder spaties achter de zoektermen wordt het:
Code:
=ALS.FOUT(INDEX(O:O;1/(1/SOMPRODUCT(($L$2:$L$100=$A2)*($M$2:$M$100=$B2)*ISGETAL(VIND.SPEC($N$2:$N$100;$C2))*RIJ($2:$100))));"XXXXX")

Het is ongelooflijk maar waar, het is gelukt! Hartelijk dank.

Ik ga je formule eens even goed uitpluizen om uit te zoeken wat je hebt gedaan!! :)
 
Het is in essentie een vermenigvuldiging van voorwaarden keer het rijnummer.

Van de voorwaarden is het VIND.SPEC gedeelte het meest interessant. Met deze functie kun je kijken of een bepaalde tekst voorkomt in een andere tekst. Zo ja is het resultaat een getal (positie waar de tekst gevonden is in de andere tekst), zo nee krijg je een foutmelding. De ISGETAL doet wat er staat. Zodra dit WAAR is er dus een overeenkomst qua tekst.

Zodra alle voorwaarden WAAR (=1) zijn is de uitkomst van de SOMPRODUCT een RIJnummer. De INDEX gebruikt deze daarna om de bijbehorende waarde op te zoeken in kolom O. Als er geen overeenkomst is dan is de uitkomst van de vermenigvuldiging 0. Door het 1/(1/..) gedeelte resulteert dit in een foutmelding. De ALS.FOUT maakt hiervan XXXXX.

Et voilá, de gewenste resultaten.
 
Status
Niet open voor verdere reacties.
Terug
Bovenaan Onderaan