Bekijk de onderstaande video om te zien hoe je onze site als een web app op je startscherm installeert.
Opmerking: Deze functie is mogelijk niet beschikbaar in sommige browsers.
Zo te zien zijn de eerste vier cijfers het jaartal? Als je daar nu eens een apart veld van maakt. Daar heb je erg veel profijt van als je queries gaat gebruiken op basis van het jaar 2008. Het autonummer veld moet je niet gebruiken om order nummers te genereren, maar enkel en alleen om een record uniek te maken. als je een record weggooit dan krijg je dat autonummer er "nooit meer" in. Je moet daar erg veel moeite voor doen.
Die moeite kan je beter steken in een goede oplossing. Maak een veld aan waar je dat getal in op wilt slaan. In jouw geval wordt dat een integer. Je wil een range van 1-9999 getallen. een integer is daar uitstekend voor geschikt.
Met een DMax bepaal je de hoogste waarde in de tabel. Met DMax("veldnaam","tabelnaam") + 1 bepaal je een nieuwe waarde voor het veld.
HTH![]()
Je code stop je in een module. De functie die je schrijft moet public zijn anders kan je hem niet gebruiken.
HTH![]()
laat de hele functie eens zien?
Option compare database
Option explicit
public function GetNextID() as long
getnextid = DMax("factuurnr", "Contributie") + 1
end function
Verwijder alles in je Module en zet het volgende erin:
Code:Option compare database Option explicit public function GetNextID() as long getnextid = DMax("factuurnr", "Contributie") + 1 end function
Je hebt nu een functie GetNextID die je aan kan roepen in andere VBA code, Forms en Queries.
HTH![]()
je query moet er ongeveer zo uitzien.Code:insert into contributie (factuurnr) values (getnextid())
Private Sub Form_Open(Cancel As Integer)
CurrentDb.Execute ("insert into contributie (factuurnr) values (" & getnextid() & ")")
End Sub
in het OnOpen event van je form kan je de volgende code opnemenCode:Private Sub Form_Open(Cancel As Integer) CurrentDb.Execute ("insert into contributie (factuurnr) values (" & getnextid() & ")") End Sub
Share and Enjoy!
als je hem compact en zipt dan kan je hem hier posten.
Zorg wel dat er geen gevoelige informatie instaat.
HTH![]()
=dmax("factuurnr","contributie")+1
Waarom moeilijk doen als het erg makkelijk kan.
Ik heb het even uitgeprobeerd maar het kan gewoon alsvolgt:
ls bij de eigenschappen van het veld "factuurnr" in de optie standaardwaarde (tabblad gegevens) opneemt
zal iedere keer dat er nieuw record wordt opgeslagen het nummer met 1 worden verhoogt.Code:=dmax("factuurnr","contributie")+1
Werkt prima zonder VBA.
Groet
Wim
Waarom moeilijk doen als het erg makkelijk kan.
Ik heb het even uitgeprobeerd maar het kan gewoon alsvolgt:
ls bij de eigenschappen van het veld "factuurnr" in de optie standaardwaarde (tabblad gegevens) opneemt
zal iedere keer dat er nieuw record wordt opgeslagen het nummer met 1 worden verhoogt.Code:=dmax("factuurnr","contributie")+1
Werkt prima zonder VBA.
Groet
Wim
We gebruiken essentiële cookies om deze site te laten werken, en optionele cookies om de ervaring te verbeteren.