object vereist

Status
Niet open voor verdere reacties.

JEPEDEWE

Terugkerende gebruiker
Lid geworden
14 jun 2006
Berichten
1.682
ik heb volgende code waarvoor ik foutmelding 424; Object vereist als resultaat krijg bij de lijn:

Set TB = db.OpenRecordset(SQL)

Code:
Private Sub cijfer_AfterUpdate()
    Dim TB As Recordset
    Dim SQL As String
    SQL = "SELECT Fiche.Volgnr_beurten FROM Fiche WHERE Fiche.Kode='" & [Forms]![patlijst]![txtKode] & "'; "
    Set TB = db.OpenRecordset(SQL)
    TB.Edit
        TB!volgnr_beurten = Me!cijfer + 1
    TB.Update
    Forms!patlijst!Beh_tel = Me!cijfer
    
End Sub

als ik de waarde van SQL vraag, dan krijg ik:

SELECT Fiche.Volgnr_beurten FROM Fiche WHERE Fiche.Kode='30011842'

laat ik dit runnen dan krijg ik 1 record...

Van waar die foutmelding?

Bedankt
JP
 
Wat wil je precies doen met die code? En draai je hem vanaf het actieve formulier of bewerk je twee formulieren tegelijkertijd? En zijn de tekstvakken die je probeert te vullen niet-gebonden?
 
Oe moeilijke vragen
Op dat moment zijn er (denk ik) nog 2 formulieren geopend maar me.cijfer staat wel op het actieve formulier. in “fiche” tabel moet het cijfer weggeschreven worden in volgnr_beurten veld
Forms.patlijst staat op dat moment ook open en hier moet de nieuwe waarde in een veld op het formulier gezet worden
 
Heeft het niet te maken dat je de Kode als Text beschouwd (terwijl het toch duidelijk in jouw voorbeeld een getal is) en dat cijfer dat ook is terwijl je er toch 1 probeert bij te tellen?
 
Heeft het niet te maken dat je de Kode als Text beschouwd (terwijl het toch duidelijk in jouw voorbeeld een getal is) en dat cijfer dat ook is terwijl je er toch 1 probeert bij te tellen?
KODE is een tekstveld, dus dat klopt wel. Bovendien is KODE alleen het filter, geen rekenwaarde.

@JP: Forms!patlijst!Beh_tel zal best open staan, maar dat was mijn vraag maar gedeeltelijk. Ik wilde weten of [Beh_tel] een niet-gebonden teksetveld is of niet.
 
Nog even wat verder gedacht, en wat vraagtekens gezet bij het continue geklooi dat je steeds doet met Recordsets, daar waar een simpele query net zo makkelijk (wat mij betreft: veel makkelijker) is. Probeer dit eens:
Code:
Private Sub cijfer_AfterUpdate()
Dim TB As Recordset
Dim iCijfer As Long
    
    iCijfer = Me.cijfer + 1
    CurrentDb.Execute "UPDATE Fiche SET [Volgnr_beurten] = " & iCijfer & " WHERE KODE= '" & Me.txtKode & "'", dbFailOnError
    Forms!patlijst!Beh_tel = iCijfer
    
End Sub
 
Status
Niet open voor verdere reacties.
Terug
Bovenaan Onderaan