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

.CSV Verwijderd de 0 voor een getallen reeks van moment van opslaan.

Status
Niet open voor verdere reacties.

Maarten192

Gebruiker
Lid geworden
4 okt 2011
Berichten
9
Goedemiddag allemaal,

Ik heb een excel bestand met een boel willekeurige gegevens. In kolom D heb ik BSNummers staan, hiervan beginnen een fors aantal met een 0. Normaal is dit geen probleem, maar op het moment dat ik het bestand opsla als .CSV verwijderd hij de 0 voor deze nummers en deze heb ik wel nodig voor het verwerken van het bestand. (Ik moet het ook als een .CSV bestand opslaan voor verwerking, hier kan ik niet omheen).

Wat ik heb geprobeerd is om de nul er weer voor te plakken door 2 kolommen samen te voegen. En deze om te zetten naar tekst (=TEKST(M1;"@")). Alleen nu blijkt dus ook dat de tekst het probleem is. (Op het moment dat ik de formule draai dan haalt excel de 0 weg) (Hierbij doe ik wel plakken met alleen de waarden in de juiste kolom). Ik heb geprobeerd om bij 'cel eigenschappen' aan te geven dat het gaat om een BSN zodat hij niks zal aanpassen, maar ook dit werkt niet.

Heeft iemand een idee hoe ik het voor elkaar kan krijgen dat de 0 voor het BSN blijft staan zodra ik deze als een .CSV opsla?

Alvast bedankt,
Maarten
 
Laatst bewerkt:
Volgens mij gaat het wel goed als je de celeigenschappen op tekst zet
(CTRL + 1 > getal > tekst)
Dan wel even controleren of alle nummers weergegeven zijn, zoals jij dat wil.
mvg Leo
 
@Leofact

Dat werkt helaas ook niet. Op het moment dat ik het bestand opsla als een .CSV dan verwijderd excel alle formules, opmaak, etc van het bestand en dus onthoudt deze dat niet op het moment dat deze weer geopend wordt. Heb ook al geprobeerd om in een anders .XLS bestand de waarde van het BSN goed te krijgen en dan te kopiëren in het .CSV bestand. Maar ook dat werkt niet ..

Ik zit er bijna aan te denken om het met de hand toe te voegen via klad blok, probleem is wel dat er 770 regels zijn ..
 
Aan de vorige reactie heb je dus weinig, want dit werkt dus niet.
wat wel werkt is een ' (apostrofe) voor het getal zetten, maar dat is waarschijnlijk niet wat je zoekt
 
Wat Leo meldt, is inderdaad de oplossing. Een nul voor het getal voorafgaand door een apostrof, dan blijft de nul in de csv staan. Je kunt in een aparte kolom even testen welk getal die aanpassing nodig heeft. Gebruik de elf-proef om de bewuste getallen te markeren:
Code:
=ALS(REST(SOM(LINKS(A1;1)*9;DEEL(A1;2;1)*8;DEEL(A1;3;1)*7;DEEL(A1;4;1)*6;DEEL(A1;5;1)*5;DEEL(A1;6;1)*4;DEEL(A1;7;1)*3;DEEL(A1;8;1)*2;ALS.FOUT(DEEL(A1;9;1)*-1;0));11)=0;"";"x")
 
Als je een getal met nul ervoor wil bewaren is het geen getal maar een tekstreeks die uit getallen bestaat.
Eeen getal dat voorafgegaan wordt door een 0 is nl exact hetzelfde als het getal zonder die nul. Die 0 is dus overbodig.
Als het om een tekstreeks gaat is de 0 wel relevant, omdat de tekstreeks mét nul niet hetzelfde is als de tekstreeks zonder nul.

Je kunt voor de 'cijfertekstreeks' een apostrof zetten, of voor of na de 'cijfertekstreeks' een spatie. Mogelijkheden genoeg.
 
Haha ik heb het nu op een andere manier opgelost. Ik heb in kolom E samengevoegd als: BSN12345678. Het bestand opgeslagen en vervolgens geopend in Word. In wordt CTRL+F en dan het BSN laten vervangen door 0. Opslaan, .CSV bestand openen met kladblok en TADA!.

Het is wat een omweg, maar het is gelukt! :)
 
Misschien kom je er met vorige post van robdgr, als er niet te veel aangepast hoeft te worden.
Moet er wel veel aangepast en dat ook vaker dan het volgende:
met ="'"&A1
Krijg je een doortrekbare formule waardoor de 0 wel blijft staan. Echter wordt de apostrofe weer zichtbaar waar je w.s niet blij van wordt.
Er staat me bij dat er nog iets anders mogelijk is, maar weet niet meer wat.
ik moet nu weg, maar kijk later nog even, mocht de vraag nog niet opgelost zijn.
 
Ik denk niet dat dit de oplossing is omdat niet alle BSN-nummers met een nul beginnen, vandaar mijn elf-proef.

Ik snap wat je bedoeld, maar het was een bestand met 11.000 regels, dit bestand heb ik verwerkt en bij de uitval lijst bleven 770 regels over waar het BSN niet herkend werd (niet geldig) dit zijn alle BSN die wel met een 0 beginnen waardoor het systeem deze niet herkent.

Toch bedankt voor het meedenken.
 
lijkt me overigens na import een fluitje van een cent:
Code:
sub snb()
 [A1:A12000]=[if(A1:A12000="","",if(len(A1:A12000)<10,"'0","") &A1:A12000)]
end sub
 
Status
Niet open voor verdere reacties.
Terug
Bovenaan Onderaan