Variabele voorloopnullen

Status
Niet open voor verdere reacties.

GoReTeXx

Gebruiker
Lid geworden
10 jun 2009
Berichten
12
Hallo allemaal,

ik heb een vraag over voorloopnullen in Access.
Wij hebben een stukje software waar nummer(client) ingevuld moeten worden.
De organisatie waar we uiteindelijk het bestand moeten aanleveren eist dat dit veld 10 cijferig moet zijn.
Wij hebben echter clientnummer die 4-cijferig, 5-cijferig, 6-cijferig enz enz... zijn.

Nu zouden we het graag zo in elkaar zetten dat wanneer er een 4-cijferig clientnummer ingevuld word, deze automatisch aangevuld wordt met 6 nullen.
Mocht het zo zijn dat het clientnummer 5-cijferig is, dan zou die getal aangevuld moeten worden met 5 nullen.
Het moet dus variabel zijn omdat wij nooit van te voren weten of we een 4-cijferig of 5-cijferig of 6-cijferig nummer in gaan vullen.\

Is dit te doen met een invoermasker, of moet hier gebruik gemaakt worden van VBA?
Als dit laatste het geval is, zou er dan aangegeven kunnen worden hoe dit in VBA te realiseren is?

Alvast bedankt voor jullie antwoorden!
 
Voorloopnullen

GetalObject is het voorbeeld veld!

Maak een query van de tabel met een extra veld als GetalObject een numeriek veld is:
veld:left$(cstr(GetalObject) & "0000000000";10)

indien GetalObject al tekst dan:
sorteerveld:left$(GetalObject & "0000000000";10)

GetalObject veranderen in naam van veld

Di heb ik niet zelf bedacht, de bron:
http://access.startpagina.nl/prikbord/6995482/6995488/re-voorloop-nullen#msg-6995488
 
Bedankt voor je antwoord. Dan heb ik nog een kleine vraag.
Waar en hoe vul ik 'left$(GetalObject & "0000000000";10)' precies in, want dat is me nog niet helemaal duidelijk.

Alvast bedankt.
 
Foutje...

Best grappig de gegeven oplossing klopt niet helemaal....
Ik heb de oplossing dus toch (gedeeltelijk) zelf bedacht. ;)
voorloopnullen moet toch voor het gegeven getal.
Het zijn anders naloopnullen. :D

De functie wordt:
sorteerveld: Right$("0000000000" & CStr([nummer]);10)

of:

sorteerveld: Right$("0000000000" & [Tabel2]![Nummer];10)

Ik heb een voorbeeld bijgevoegd. Zie query 1 en 2 voor je antwoord. query 1 is functie 1. Query 2 is voor functie 2.
 

Bijlagen

super bedankt

dit gaf de goede oplossing ik heb hem gebruikt binnen een updatequery.
Enorm bedankt
 
Status
Niet open voor verdere reacties.
Terug
Bovenaan Onderaan