Welkom op het forum van startpagina!

Dit forum staat op alleen-lezen. Je kan hier informatie zoeken en oude berichten terugvinden, maar geen nieuwe berichten plaatsen.

Naar overzicht van alle forums

Variabele Voorloopnullen

  • Kevin

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

    Gr. Kevin

  • Wim Gommans

    Public Function Get_Klant_ID(ID as String) as string

    Get_Klant_ID = Right(“0000000000” & ID ,10)

    End Function

    Oproepen met me.tekstvak1 = Get_Klant_ID(me.tekstvak1)

  • cor

    – met een bijwerkquery worden alle nummers voorzien van voorloopnullen.

    Public Function VoorloopNullen(InputString As String, StringLengte As String) As String

    '========================================================================

    '= Deze functie converteert een string of numerieke waarde naar een =

    '= string met een vast aantal karakters. De niet gebruikte posities =

    '= worden aan de linkerzijde aangevuld door nullen. =

    '= =

    '= Mark Dedters, Juli 2001 =

    '========================================================================

    On Error GoTo errVoorloopNullen

    Dim iNul, iLen As Integer

    Dim sNul As String

    sNul = “”

    iLen = Len(InputString)

    iNul = StringLengte - iLen

    If iNul < 0 Then

    VoorloopNullen = “Te lang”

    Exit Function

    End If

    Do While iNul <> 0

    sNul = sNul & “0”

    iNul = iNul - 1

    Loop

    VoorloopNullen = sNul & InputString

    exitVoorloopNullen:

    Exit Function

    errVoorloopNullen:

    MsgBox Err.Description, , “Voorloopnullen”

    Resume exitVoorloopNullen

    End Function