Hoi Eric B,
Ik heb alles gedaan zoals gezegd. Maar ik krijg steeds de MsgBox “Fout opgetreden bij het aanmaken van het ordernummer”.
Geen idee wat ik hieraan moet doen. jij wel?
Eric P
Dit forum staat op alleen-lezen. Je kan hier informatie zoeken en oude berichten terugvinden, maar geen nieuwe berichten plaatsen.
Naar overzicht van alle forumsVoor de liefhebbers een oplopend volgnummer in VBA (versie 2) in de eerder geposte code zit een klein foutje.
'In je formulier kopieren :
'kontroleer daarna even of er bij de eigenschappen
'van het formulier tabblad Gebeurtenis
'bij voor invoegen staat
'is dit niet het geval klik dan op de puntjes
Private Sub Form_BeforeInsert(Cancel As Integer)
dim ret as string
ret=MKHignum
if len(ret) > 0 then
me.volgnummer=ret
else
MsgBox “Fout opgetreden bij het aanmaken van het ordernummer”, _
vbOKOnly + vbExclamation, “Probleem”
cancel=true
end if
End Sub
'In de module kopieren :
'als je dit in de module hebt gekopieerd
'kijk dan in het menu Extra/verwijzingen of de verwijzing Microsoft
'DAO 3.6 object library is aangevinkt (nummer kan verschillen( is versie))
'=======================================
'Function MKHignum() As String
'
'Bepaal het hoogste nummer
'MKHignum Retourneert het hoogste nummer
'=======================================
Function MKHignum() As String
On Error GoTo MKHignum_Err
Dim db As Database
Dim thequery As String
Dim therec As Recordset
Dim mw As String
Dim vlc As String
Dim fnr As String
vlc = “SO-ORD-” 'voorloopcode
Set db = CurrentDb
thequery = “SELECT Max(volgnummer) AS MaxRecnum FROM inkooporders;”
Set therec = db.OpenRecordset(thequery)
If therec.RecordCount > 0 Then
If Not IsNull(therec(“MaxRecnum”)) Then
mw = therec(“MaxRecnum”)
mw = Right$(mw, 5) 'nieuw jaar?
If Val(Left$(mw, 2)) <> Year(Date) - 2000 Then
fnr = “001”
Else 'verhoog nummer
fnr = Right$(“000” & Val(Right$(mw, 3)) + 1, 3)
End If
Else 'lege tabel
fnr = “001”
End If
Else
fnr = “001”
End If 'retourneer de waarde
MKHignum = vlc & Format(Date, “yy”) & fnr
'—————————————
'Err_exit
'—————————————
MKHignum_Err_exit:
CloseRecset therec
CloseDB db
Exit Function
'—————————————
'Err_handler
'—————————————-
MKHignum_Err:
Resume MKHignum_Err_exit
End Function
'=======================================
'Sub CloseRecset()
'
'Close en release recordset
'=======================================
Sub CloseRecset(trec As Recordset)
On Error Resume Next
trec.Close
Set trec = Nothing
End Sub
'=======================================
'Sub CloseDB()
'
'Close en release recordset
'=======================================
Sub CloseDB(datb As Database)
On Error Resume Next
datb.Close
Set datb = Nothing
End Sub
Weet je zeker dat je deze post als spam wil rapporteren aan de beheerder?
Deze post wordt als spam gerapporteerd aan de beheerder van het forum. Bedankt!
Weet u zeker dat u dit topic wil verwijderen?