• 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.

Zoeken naar een kernwoord in een tekstveld van excel en die dan weergeven

Status
Niet open voor verdere reacties.

HeuvelP

Gebruiker
Lid geworden
21 jun 2015
Berichten
21
Beste experts,

In een Excel bestand wil ik records karakteriseren op basis van een kernwoord, en ik kom er niet uit hoe dat kan.

De situatie is als het volgt.
Ik heb een Excel bestand met ongeveer 3000 records, elk bestaande uit een stuk of 10 velden.
Eén van deze velden is een tekstveld met een automatisch gegenereerde tekst, die iets zegt over het record. Deze tekst is niet uniform, maar het bevat altijd wel een karakteristiek kernwoord. Die bepaalt deels de verdere verwerking.
Er zijn een stuk of vijfentwintig kernwoorden. Daar heb ik een referentietabel van.
Ik zoek een constructie in Excel die dat kernwoord herkent op basis van die referentietabel, en plaatst in een nieuw veld in dat record.

Voorbeeld.
Bijgevoegd een voorbeeld die dat hopelijk iets verduidelijkt.
Stel we hebben een systeem wat objecten en kleuren herkent, en daar een lijst van maakt in de vorm van tekstvelden. B.v. "De roos is rood." Het karakteristieke woord voor verdere verwerking is dan de kleur.
Nu heb ik in elk van die records een veld nodig wat aangeeft of dat record correspondeert met een vooraf bepaalde lijst kleuren. En die moet dan in een extra veld worden toegevoegd aan het record. B.v. "Rood".

Ik heb dit geprobeerd op te lossen met een ALS-functie, waarbij ik keek of het tekstveld overeenkomt met de string ("*"& <referentiewaarde> &"*"), ook al is dat een beetje omslachtig. Hij moet als het ware terugkijken naar de oorspronkelijke tekst en in die ALS-functie moeten alle kernwoorden (genest) zitten. In theorie zou het echter kunnen.

Probleem
Helaas werkt dat niet. Op de één of andere manier werkt de wildcard niet.
Een voorbeeld hiervan staat in Experiment, waar je kan zien dat de formule in principe wel werkt, zie de velden B16, 17, 18.
Het werkt echter niet als je een wildcard gebruikt, zie de velden C16, 17, 18.

Wie weet hoe dit zit? Werken wildcards niet altijd?
En heeft iemand een idee hoe ik de oorspronkelijke functionaliteit alsnog zou kunnen krijgen. Misschien is er een andere mogelijkheid die ik helemaal over het hoofd zie :)

(Uiteraard is het een heel onelegante functionaliteit, die helemaal niet nodig was geweest als het oorspronkelijke bestand anders was opgezet. Maar helaas... daar heb ik geen invloed op...)

Bij voorbaat dank!

Groeten,

Philip van den Heuvel
 

Bijlagen

Bedankt!

Bedankt WHER, ik ga het bestuderen.
Is precies wat ik nodig heb!
Groet,
Philip
 
Hallo,

Nog een voorbeeldje maar nu zonder matrix formule.

Mvg
Peter
 

Bijlagen

@peter59

:thumb:
Misschien interessant om er op te wijzen dat, indien in één zin twee sleutelwaarden voorkomen, mijn formule de eerstvoorkomende zal weergeven, jouw formule de laatstvoorkomende, zie bijlage.
 

Bijlagen

@WHER

Nou, oké.
Dat is een hele leuke bijkomstigheid. Eigenlijk nooit bij stil gestaan.

Mvg
Peter
 
@WHER @Peter59
Allebei bedankt voor de oplossingen. Ik kan hiermee uit de voeten.
Ik had inderdaad ook ontdekt dat de beide oplossingen verschillen, t.a.v. welke wordt weergegeven als er meer dan één sleutelwaarde is, maar dat maakt voor mijn bedoeling niet uit. Er komen nooit twee sleutelwaarden tegelijk voor.

Mij leek het overigens dat dit te maken heeft met de volgorde in de referentietabel, niet met de volgorde binnen de onderzochte zin.
Het lijkt erop dat beide oplossingen beide sleutelwaarden in een zin zien, maar dat de ene oplossing vasthoudt aan de eerste die hij in de referentietabel tegenkomt en de tweede aan de laatste... of iets dergelijks.

Bekijk bijlage 151207_Voorbeeld.xlsx

Groet,
Philip
 
Status
Niet open voor verdere reacties.
Terug
Bovenaan Onderaan