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

gegevens in cel splitsen

Status
Niet open voor verdere reacties.

mariannevanh

Terugkerende gebruiker
Lid geworden
14 dec 2004
Berichten
2.135
In het voorbeeldbestand in de bijlage heb ik een tabel staan.
In de werkelijke tabel heb ik beschikking over kolom A. De gegevens in die tabel moeten worden gesplitst over de kolommen. De gegevens in kolom A bevatten aan het begin van een nieuwe regel een "[" gevolgd door een label en "]" met daarachter de waarde. Ik wil die waarden verdelen over de kolommen zoals ik ze heb weergegeven in de kolommen B tot en G.
Omdat de werkelijke tabel vele malen groter is, zoek ik een formule, maar ik kom er niet uit.
Tot nu toe probeerde ik:
Code:
=DEEL(A1;1;VIND.SPEC(TEKEN(10)&"[";A1)-1)
=DEEL(A1;VIND.SPEC(TEKEN(10)&"[";A1)+1;10000)
=DEEL(A1;VIND.SPEC(TEKEN(10)&"[";A1)+VIND.SPEC(TEKEN(10)&"[";DEEL(A1;VIND.SPEC(TEKEN(10)&"[";A1)+1;10000))+1;10000)
=DEEL(A1;VIND.SPEC(TEKEN(10)&"[";A1)+VIND.SPEC(TEKEN(10)&"[";DEEL(A1;VIND.SPEC(TEKEN(10)&"[";A1)+1;10000))+VIND.SPEC(TEKEN(10)&"[";DEEL(A1;VIND.SPEC(TEKEN(10)&"[";A1)+VIND.SPEC(TEKEN(10)&"[";DEEL(A1;VIND.SPEC(TEKEN(10)&"[";A1)+1;10000))+2;10000))+1;10000)

Maar of dit afdoende is en of dit korter kan, daar ben ik nog niet uit. Wie kan mij helpen?

Vriendelijke groet,
Guido
 

Bijlagen

Zoiets misschien?
Code:
B2: =ALS.FOUT(SUBSTITUEREN(SPATIES.WISSEN(DEEL(SUBSTITUEREN($A2;"[";HERHALING(" ";250)&"[");VIND.SPEC(B$1;SUBSTITUEREN($A2;"[";HERHALING(" ";250)&"["))+LENGTE(B$1)+1;150));TEKEN(10);"");"")
 

Bijlagen

Laatst bewerkt:
Alex, deze formule voldoet voor 99,9%. De laatste 0,1% is een omissie van mijzelf. (dus je krijgt van mij een 100% beoordeling).
Stel dat er in kolom A nog een label staat waarvoor ik per abuis geen kolom heb gemaakt, dan blijft ie onzichtbaar in de kolommen B tot en met einde tabel.
(zie cel A2: [etiketje C2]alweer andere data)
Is daar een oplossing voor te vinden? Dat mag een simpele opmerking zijn in de volgende kolom: "extra veld: etiketje C2", zodat ik zelf actie kan ondernemen en de kolom toevoegen.

Vriendelijke groet,
Guido
 

Bijlagen

Is het een eenmalige actie of komt het vaker voor?

Alles in een formule proberen te vatten, zeker de aanvullende voorwaarde hierboven, maakt het complex...
 
Het is ten behoeve van een uit te voeren conversie, dus in principe is het eenmalig,
Het is echter niet zeker of deze conversie de laatste conversieslag is, daarom kan het voorkomen dat er in de komende tijd nog velden bijkomen. Als dat bijvoorbeeld komende maand gebeurt en in december doe ik een nieuwe conversie, wie garandeert mij dan dat ik nog denk aan veld dat ik in februari heb toegevoegd?
Daarom stelde ik ook voor dat een simpele opmerking al afdoende zal zijn. Dan voeg ik - op basis van die opmerking alsnog een kolom toe en krijg ik een picobello oplossing.

Vriendelijke groet,
Guido
 
Meest simpele leek mij een extra kolom met een check of er etiketten ontbreken. Zo ja krijg je een melding. WELK specifieke etiket dit dan is moet je dan handmatig even bekijken. Is dit werkbaar?
 

Bijlagen

Er staan geen matrixfuncties in het voorbeeld.

Ik tel de totale lengte van alle teksten (teksten, etiketten) en vergelijk die met de oorspronkelijke lengte van de tekst in kolom (minus de harde enter, teken 10). De 2 staat voor de []-tekens rondom de "etiketnamen" die ook meegenomen moeten worden.

Waarom het bij jou niet zou werken kan ik vanaf hier natuurlijk niet zien.

Je zult wat speurwerk moeten doen, bijvoorbeeld op verborgen tekens als het een importbestand is.
 
Laatst bewerkt:
Ik meende dat formules met accolades eromheen "matrixformules" werden genoemd.
Het probleem is zo goed als opgelost. Het resterend probleempje is nu dat er twee labels zijn met een deels overlappende tekst.
Leeftijd bruid
Leeftijd bruidegom

Hier ga ik een grap uithalen: het betreft een citaat uit oude aktes, en daarom maak ik er van:
Leeftijd der bruid
Leeftijd des bruidegoms

Het probleem is dan opgelost en mijn tabel geeft alles goed weer.

Heel erg hartelijk dank voor alle hulp!
 
Je eerste opmerking klopt, alleen kan ik die formules met accolades niet vinden in het voorbeeld. Heb ook geen formules ingevoerd als matrix volgens mij :shocked:

Maar goed, mooi dat het opgelost is. Succes ermee en tot de volgende keer.
 
@AlexCEL,

Het is een beetje verneukeratief(mag dit woord?) in Office 365. Zelf ben ik er ook al een aantal keren tegenaan gelopen. De nieuwste versie van Excel snapt zelf dat het een matrixformule is. In oudere versies staan er wel degelijk {} om in dit geval jouw formule zonder dat jij het in in jouw versie als CSE opgeslagen hebt. (Zie plaatjes 365 vs 2010)

Geen matrix  XL365.PNG
Wel matrix XL-2010.PNG

Allemaal maar over naar de nieuwste versie met alleen de Engelse taal als optie:d
 
Versiedingetje dus... dit was ik nog niet tegengekomen. Weer wat geleerd. :thumb:
 
Status
Niet open voor verdere reacties.

Nieuwste berichten

Terug
Bovenaan Onderaan