Autonummer reset per jaar

Status
Niet open voor verdere reacties.

klablabla

Gebruiker
Lid geworden
28 apr 2008
Berichten
116
Hallo,

Graag zou ik een Automatisch nummer willen generen. Als er een nieuwe aangemaakt wordt moet het "VTM-2012-001" enz. zijn.
Dit doe ik momenteel op de volgende manier (werkt zolang het 2012 blijft):
Code:
Me.VTMNR = "VTM-" & Format(Date, "yyyy") & "-" & Me.ID.Value
Het nadeel is dat als het dalijk 2013 is. Dat het nummer doornummert en niet reset naar 1.
Graag zou ik dit dus wel zien.

Alvast bedankt.
 
Dat gaat op deze manier inderdaad nooit lukken. Je zult in ieder geval het laatste deel van het volgnummer apart moeten uitlezen en ophogen met 1, en niet zoals je het nu doet. Maak dus een functie:

Code:
Function Volgnummer() As String
Dim tmp As Variant
Dim i As Integer, Jaar As Integer
On Error GoTo NieuwNummer

    tmp = Split(DMax("VTMNR", "tblNaam"), "-")
    If CInt(tmp(1)) = Year(Date) Then
        tmp(UBound(tmp)) = Right("000" & CInt(tmp(UBound(tmp)) + 1), 3)
        For i = LBound(tmp) To UBound(tmp)
            Volgnummer = Volgnummer & tmp(i)
            If i < UBound(tmp) Then Volgnummer = Volgnummer & "-"
        Next i
    Else
        Volgnummer = "VTM-" & Year(Date) & "-001"
    End If
    Exit Function

NieuwNummer:
Volgnummer = "VTM-" & Year(Date) & "-001"

End Function

Deze functie gaat uit van je eigen veldnaamomschrijving. Alleen de naam van de tabel weet ik uiteraard niet, dus die zul je moeten aanpassen. Tweede punt: omdat je het volgnummer in een tekstveld gebruikt, zul je het format van het eigenlijke nummer moeten opmaken met voorloopnullen. In de code heb ik er 3 gebruikt. Is dat te weinig, dan kun je er uiteraard ook 4 van maken.
Gebruik hem op je formulier als standaardwaarde op het veld VTMNR als volgt: =VolgNummer()
 
Werkt geweldig, bedankt.

Waar haal jij al die kennis vandaan?
Je reageert meestal als eerste en je informatie is echt super.
 
Dank voor het compliment :D
Kennis stapelt zich doorgaans op. Kwestie van lezen en doen dus!
 
Status
Niet open voor verdere reacties.

Nieuwste berichten

Terug
Bovenaan Onderaan