OVH Cloud OVH Cloud

Recordcount...

1 réponse
Avatar
Doft
Bonjour,

J'ai une petite requ=EAte en VBA que j'utilise pour voir si=20
il y a d=E9j=E0 certains enregistrements dans une table. Si la=20
req=FBete renvoie aucun enregistrement je renvoie un bout de=20
code et si il y a des enregistrements je renvoie un autre=20
bout de code...le probl=E8me se situe au recordcount...Pour=20
que le recordcount fonctionne il me semble obligatoire de=20
faire un monrecordset.movelast or si il n'y a pas=20
d'enregistrement dans la table cela me cr=E9e une erreur=20
(normal...) Mais alors comment faire pour rediriger mes=20
bout de code???

donc je fais:

monrecordset=3Ddb.openrecordset(MaRequ=EAte,dbopendynaset)

monrecordset.movelast
If monrecordset.recordcount =3D 0 then

1 réponse

Avatar
Damien Mermoz
Salut,
normalement il n'est pas nécessaire de faire le movelast si tu veux juste
savoir s'il y a des enregistrements.
recordcount renvoi 1 s'il y a des enregistrements et 0 s'il n'y en a pas.
Si tu as besoin de connaitre le nombre exact d'enregistrement là il faut
faire un movelast.

Autre solution capturer l'erreur
on error resume next
rs.movelast
if err = 3021 then
ton code quand y'a pas d'enregistrement
else
ton code quand y'en a.
end if
on error goto 0



"Doft" a écrit dans le message news:
097c01c3b975$49562380$
Bonjour,

J'ai une petite requête en VBA que j'utilise pour voir si
il y a déjà certains enregistrements dans une table. Si la
reqûete renvoie aucun enregistrement je renvoie un bout de
code et si il y a des enregistrements je renvoie un autre
bout de code...le problème se situe au recordcount...Pour
que le recordcount fonctionne il me semble obligatoire de
faire un monrecordset.movelast or si il n'y a pas
d'enregistrement dans la table cela me crée une erreur
(normal...) Mais alors comment faire pour rediriger mes
bout de code???

donc je fais:

monrecordsetÛ.openrecordset(MaRequête,dbopendynaset)

monrecordset.movelast
If monrecordset.recordcount = 0 then