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

Tekst splitsen over 2 cellen

Status
Niet open voor verdere reacties.

lubros

Gebruiker
Lid geworden
9 nov 2012
Berichten
40
Ik heb een kolom met omschrijvingen die ik moet splitsen naar 2 kolommen. Die 2 kolommen hebben beide max 35 karakters. Tekst moet wel op een "mooie" manier gesplitst worden. In de bijlage een paar voorbeeld waarbij de ene wel goed gaat en de andere niet. Op de één of andere manier gaat hij ook al splitsen als het niet nodig is. Als omschrijving niet meer dan 35 karakters heeft is dit uiteraard niet nodig.
Wie kan me helpen om deze formule te verbeteren.
Bekijk bijlage Tekst splitsen.xlsx
 
Deze helpt toch al een beetje:
=ALS(LENGTE(A2)<=32;A2;ALS(ISFOUT(VIND.SPEC(" ";A2));LINKS(A2;35);LINKS(A2;MAX((DEEL(LINKS(A2;36);RIJ($2:$37);1)=" ")*RIJ($2:$37))-1)))
 
Deze in B2:
Code:
=ALS(LENGTE(A2)<35;A2;LINKS(A2;VIND.SPEC("|";SUBSTITUEREN(A2;" ";"|";36-LENGTE(SUBSTITUEREN(LINKS(A2;36);" ";""))))))
...en deze in C2
Code:
=SUBSTITUEREN(A2;B2;"")

Het zijn geen matrixformules. Het gaat alleen nog mis als de tekst in kolom A geen spaties bevat in de eerste 36 tekens.
 
Laatst bewerkt:
Was wel een matrixformule en voor de 2de omschrijving heb je toch niet zo'n ingewikkelde formule nodig.
 

Bijlagen

Opgelost

Iedereen bedankt voor het meedenken, beide manieren werken, toekomst zal uitwijzen welke uiteindelijk de beste is
 
Nog een variant op de oplossing van Timshel (ook geen matrixformules):
Code:
B2: =LINKS(A2;-1+ZOEKEN(2;1/(INDEX((DEEL(A2&" ";RIJ(INDIRECT("1:36"));1)=" ");0));RIJ(INDIRECT("1:36"))))
C2: =SPATIES.WISSEN(SUBSTITUEREN(A2;B2;""))

Resultaat is exclusief de spatie waarop gesplitst is.
 
Nog een variant op de oplossing van Timshel (ook geen matrixformules):
Code:
B2: =LINKS(A2;-1+ZOEKEN(2;1/(INDEX((DEEL(A2&" ";RIJ(INDIRECT("1:36"));1)=" ");0));RIJ(INDIRECT("1:36"))))
C2: =SPATIES.WISSEN(SUBSTITUEREN(A2;B2;""))

Resultaat is exclusief de spatie waarop gesplitst is.

Thanks, deze is zelfs compleet.
 
Status
Niet open voor verdere reacties.
Terug
Bovenaan Onderaan