geen records gevonden

Status
Niet open voor verdere reacties.

JEPEDEWE

Terugkerende gebruiker
Lid geworden
14 jun 2006
Berichten
1.682
hallo,
ik maak een query die het aantal records telt dat aan mijn criterium voldoet
met het commando .moveFirst en .moveLast krijg ik het correcte cijfer
Maar
als er geen record gevonden wordt krijg ik bij de lijn .movefirst de melding "geen huidig record"
Ik wil deze melding niet krijgen en wil dat het programma gewoon door loopt
Ik kan een onerror toevoegen maar er moet toch een betere manier zijn denk ik dan

Vandaar mijn vraag, hoe geraak ik voorbij de melding en ga verder met de gevonden "0-waarde"

Bedankt
 
Moet je er een check aan toevoegen die kijkt of er een record in zit. Daar zijn verschillende manieren voor, bijvoorbeeld DCount op het sleutelveld vaan je query. Of een On Error die je wegleidt uit de procedure.
 
Een beetje simpel voorbeeld, wat bij mij werkt maar wellicht bij jou nog steeds een probleem kan opleveren is zoiets:
Code:
    Set rs = CurrentDb.OpenRecordset("Query1")
    With rs
        If .RecordCount = 0 Then Exit Sub
        .MoveLast
        .MoveFirst
        MsgBox .RecordCount
    End With

Een correcte RecordCount krijg je alleen als de recordset is doorlopen (met DAO althans; ADO kan dat wél in een keer). En dus een foutmelding als er geen records zijn. Door gelijk een Recordcount op te vragen krijg je ofwel 1 als er 1 of meer records zijn (fout antwoord dus doorgaans), ofwel 0 als er geen records zijn. Met de waarde 0 als uitkomst weet je dus dat de recordset leeg is, en dan hoef je niet MoveLast en MoveFirst meer te doen.
 
Status
Niet open voor verdere reacties.
Steun Ons

Nieuwste berichten

Terug
Bovenaan Onderaan