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

hoe splits ik in een cel?

Status
Niet open voor verdere reacties.

resmatrix

Gebruiker
Lid geworden
6 nov 2006
Berichten
173
Beste allemaal,

Ik heb een excel uitdaging. Op bijna dagelijkse basis krijg ik excel bestanden waarbij zo’n 20000 regels gevuld zijn met autogegevens. In iedere cel staat het merk en type. Nu moet dat merk en type gesplitst worden maar met VINDSPEC en daarna splitsen op basis van de positie van dat speciale teken werkt bij lange na niet voor alle cellen (zo’n 50% niet)

Mijn vraag is er een formule of macro te bedenken die opgaat voor iedere cel en zo ja waar moet ik dan gebruik van maken? VINDSPEC werkt blijkbaar niet of ik heb het niet juist omschreven maar ik weet niet wat wel kan werken

Onderstaand de voorbeelden van hoe het in de cel staat:

307 XS 1.4 HDi 51kW Break
Laguna Grand Tour Expression 1.8 16V Automaat
Santa Fé 2.2 CRDI VGT 4WD DRF Style Vers. automaat
9-3 1.8t Sport Sedan Vector
A6 2.4 V6 130kW Pro Line Business Avant
Mégane CC Privilège 2.0 16V Luxe Automaat


Hieronder staat wat het resultaat moet zijn:

XS 1.4 HDi 51kW Break
Grand Tour Expression 1.8 16V Automaat
2.2 CRDI VGT 4WD DRF Style Vers. automaat
1.8t Sport Sedan Vector
2.4 V6 130kW Pro Line Business Avant
CC Privilège 2.0 16V Luxe Automaat

Zoals jullie zien heeft de Santa Fe al eerder een spatie dan waar die geplitst moet worden, das dus net het probleem

Weet iemand hoe ik dat het beste kan doen?
 
En hoe zou je dat met de hand doen? Welke regel zou je volgen?

Als die er niet is, denk ik dat het niet kan om alle rijen juist te doen.
 
als de data in kolom A staat ga ik als volgt te werk

Kolom B: VIND.SPEC(" ";A1;1)

Kolom C : DEEL(A1;B1;100)

het resulteert in een splitsing in kolom C waarbij alle type voertuigen die beginnen met de type naam worden gesplitst. Dit gaat dus niet goed bij de voertuigen waarbij de type aanduiding dubbele namen bevat zoals de Hyundai Santa Fe. Ik kan dus geen unieke sleutel bedenken die voor alle cellen geldt en ik weet dus ook niet of dat uberhaupt kan.

bijgevoegd het bestandje zoals ik het nu doe.
 

Bijlagen

poeh, dat wordt lastig.... zoeken met als criterium een spatie is dus te simpel, je moet specifieker zijn. Al die typen hebben een verschillende opmaak (aantal karakters, spaties, etc.) daar kun je dus niets mee.
Zo'n zelfde soort probleem kan je trouwens ook krijgen met merken. Austin Healey, Rolls Royce, Aston Martin, noem maar op. Die namen bestaan ook uit meerdere woorden met spaties ertussen, dus gagarandeerd dat je daarmee ook de mist in gaat.

Wat je misschien zou kunnen doen is een database maken met alle merken en typen auto's waarin je het zoekcriterium (VIND.SPEC) in combinatie met bijvoorbeeld (VERT.ZOEKEN), (INDIRECT) of (INTEGER) kunt zoeken en extraheren, maar dat zal ook niet meevallen. Dat wordt een flinke lijst. Bovendien loop je dan nog tegen het probleem aan dat je ook "schrijffoutjes" moet incalculeren. Bijvoorbeeld bij die Santa Fé die je noemt. Dat kan natuurlijk worden weergegeven als
"SantaFe" maar ook als
"Santa Fe" of
"Santa Fé" of
"SantaFé"

En dan heb je het nog maar over één type auto...:shocked: dus dat wordt een hele klus. Bovendien zal je die lijst regelmatig moeten aanpassen als er nieuwe modellen komen.
 
Laatst bewerkt:
De enig mogelijke manier is een zoektabel, zoals MadMuppet aangeeft.

Dit is trouwens hetzelfde soort probleem als namen splitsen. Voornaam, tussenletters, achternaam.

Punt is dat daar te weinig structuur inzit die je kan benutten. En dat maakt het onmogelijk om een eenduidige algemeen geldende regel op te stellen.

Wigi
 
ik heb zitten denken om niet te kijken naar het type voertuig maar naar een andere sleutel te zoeken. Oftewel zoek niet de spatie maar zoek het eerste getal wat je tegenkomt. Dat is namelijk bijna altijd de motorinhoud. alleen dan loop ik weer mank bij oa de BMW 320, SAAB 9-5 en de PEUGEOT 307.

Volgens mij moet het kunnn als ie zoekt naar de combinatie van een spatie,getal en een punt.(het gedeelte tussen haakjes "") Santa Fé" 2."2 CRDI VGT 4WD DRF Style Vers. automaat

dan resteert alleen het probleem dat dat getal een 1,2,3,4 of 5 kan zijn

Of kan ik dat wellicht als variabele ingeven????

of wellicht een macro die meerdere zoek combinaties uitvoert. oftwewel zoek eerst de motorinhoud en indien die niet te vinden is zoek dan naar een andere sleutel?
 
Laatst bewerkt:
Dank je Wigi en madmuppet.

Ik heb een referentielijst deze lijst zal worden gecompleteerd met de verschillende schrijfwijzen. Hierdoor krijg ik een lijst van ongeveer 1500 referenties.

maar hoe laat ik hem dan zoeken. VERT. Zoeken lukt niet dus zal ik want hij moet een gedeelte van de referentie zoeken

oftwel hij moet dan eerst in de referentie lijst zoeken naar Santa Fe en dan in iedere individuele cel kijken of dat voorkomt, indien nee dan zal hij naar de volgende schrijfwijze moeten zoeken net zo lang totat hij een hit heeft en dan moet ie de cel nog delen.

echt ik heb geen flauw idee hoe dat moet:shocked:
 
hoe kom je aan die lijst? als het om een export gaat, is misschien het eenvoudiger de exportlayout aan te passen.

steven
 
nee de lijst is een bestaande lijst met merk en types
deze wordt alleen nu nog gecompleteerd met de verscheidene schrijf wijzes

maar dan heb ik dus de lijst alleen weet ik niet hoe ik vanuit die lijst laat zoeken in 1 cel:confused:
 
heb een aantal voorbeelden (blad 1)
en de lijst (blad 2 ) even toegevoegd

wellicht geeft dit een duidelijker beeld
de verschillende schrijfwijzen zijn hier nog niet in toegevoegd

op voorhand nogmaals dank voor de moeite
 

Bijlagen

resmatrix,

ik zie het niet gebeuren. Ik heb er een tijdje meer zitten prutsen, maar ik zou niet weten hoe je dit voor elkaar moet krijgen. Probleem is dat je wilt gaat zoeken naar een typebenaming van een auto, waarvan je helemaal niets weet. Die naam kan elk willekeurig aantal karakters hebben, letters, cijfers en combinaties daarvan eventueel ook met spaties om het nog wat moeilijker te maken. Bovendien wil je dat gaan zoeken in een cel waar nog veel meer gegevens in staan. Je wilt bijvorbeeld zoeken naar de kreet "Mondeo" in een cel waarin staat "Mondeo 2000TDCi 85kW Collection Wagon".

Ik heb geprobeerd om iets met DEEL() en VERT.ZOEKEN() te doen, maar daarvoor moet je wel weten uit hoeveel karakters de typenaam bestaat, en moeten al die namen bovendien allemaal evenveel karakters hebben. Dat lukt dus niet..... misschien heeft iemand anders nog een helder idee? :confused:
 
ik zie het niet gebeuren. Ik heb er een tijdje meer zitten prutsen, maar ik zou niet weten hoe je dit voor elkaar moet krijgen. Probleem is dat je wilt gaat zoeken naar een typebenaming van een auto, waarvan je helemaal niets weet. Die naam kan elk willekeurig aantal karakters hebben, letters, cijfers en combinaties daarvan eventueel ook met spaties om het nog wat moeilijker te maken. Bovendien wil je dat gaan zoeken in een cel waar nog veel meer gegevens in staan. Je wilt bijvorbeeld zoeken naar de kreet "Mondeo" in een cel waarin staat "Mondeo 2000TDCi 85kW Collection Wagon".

Ga ik mee akkoord. Zoals gezegd, probeer eerst een eenduidige regel op te stellen om te zoeken, vervolgens kan men hier proberen een formule voor op te stellen. En niet omgekeerd ;)
 
ok thanx:thumb:

in ieder geval bedankt voor de moeite.
ik ga kijken of ik de data op een andere wijze aangeleverd kan krijgen.

nogmaals dank
 
Status
Niet open voor verdere reacties.
Terug
Bovenaan Onderaan