Hoi allemaal,
Eerste post hier volgens mij. Ik zal me even kort voorstellen.
Ik ben Tim uit Wageningen en ik doe de deeltijd studie Technische Informatica aan de HAN in Arnhem.
Ik ben bezig aan een database applicatie in Access voor een casus. Op zich vlot het redelijk, ik loop nu alleen vast.
Zoals in de titel beschreven gaat het om de foutmelding "Object variable or With block variable not set"
Ik krijg deze foutmelding bij het uitvoeren van de volgende code:
Wat ik probeer te bereiken met de code is het volgende.
Als er op de knop "Nieuwe Klant" geklikt wordt, dan moet het formulier leeg en klaar zijn om een nieuwe klant in te voeren.
Tot zover geen probleem, maar bij het opslaan van de klant ontbreekt het klantnr (primary key van de Klant tabel in de database). De PK van deze tabel heeft geen AI.
Ik probeer dus te achterhalen wat de volgende id (klantnr) van de PK moet worden. In bovenstaande code probeer ik dus d.m.v. een query de huidige grootste waarde voor klantnr te achterhalen. De code wordt correct uitgevoerd t/m de regel "MsgBox ("booyah")". Daarna verschijnt de foutcode.
Ik probeer het dmv een database query op te lossen, maar misschien is er wel een veel makkelijkere manier om het juiste waarde voor klantnr (hoogste nog niet bestaande) mee te geven als het record opgeslagen wordt (Save Record).
Alle suggesties zijn zeer welkom.
Bij voorbaat dank.
Groet,
Tim
Eerste post hier volgens mij. Ik zal me even kort voorstellen.
Ik ben Tim uit Wageningen en ik doe de deeltijd studie Technische Informatica aan de HAN in Arnhem.
Ik ben bezig aan een database applicatie in Access voor een casus. Op zich vlot het redelijk, ik loop nu alleen vast.
Zoals in de titel beschreven gaat het om de foutmelding "Object variable or With block variable not set"
Ik krijg deze foutmelding bij het uitvoeren van de volgende code:
Code:
Private Sub btnNieuweKlant_Click()
On Error GoTo Err_btnNieuweKlant_Click
DoCmd.GoToRecord , , acNewRec
Dim MyDb As Database
Dim MyRec As Recordset
Dim knr As Integer
Set MyDb = CurrentDb()
MsgBox ("booyah")
Set MyRec = MyDb.OpenRecordset("SELECT MAX(klantnr) FROM Klant")
Me.klantnr.Value = MyRec![klantnr] + 1
Exit_btnNieuweKlant_Click:
Exit Sub
Err_btnNieuweKlant_Click:
MsgBox Err.Description
Resume Exit_btnNieuweKlant_Click
End Sub
Wat ik probeer te bereiken met de code is het volgende.
Als er op de knop "Nieuwe Klant" geklikt wordt, dan moet het formulier leeg en klaar zijn om een nieuwe klant in te voeren.
Tot zover geen probleem, maar bij het opslaan van de klant ontbreekt het klantnr (primary key van de Klant tabel in de database). De PK van deze tabel heeft geen AI.
Ik probeer dus te achterhalen wat de volgende id (klantnr) van de PK moet worden. In bovenstaande code probeer ik dus d.m.v. een query de huidige grootste waarde voor klantnr te achterhalen. De code wordt correct uitgevoerd t/m de regel "MsgBox ("booyah")". Daarna verschijnt de foutcode.
Ik probeer het dmv een database query op te lossen, maar misschien is er wel een veel makkelijkere manier om het juiste waarde voor klantnr (hoogste nog niet bestaande) mee te geven als het record opgeslagen wordt (Save Record).
Alle suggesties zijn zeer welkom.
Bij voorbaat dank.
Groet,
Tim