OVH Cloud OVH Cloud

Access 2.0 et la fonction recordcount

4 réponses
Avatar
mathilde
Bonjour à tous et toutes,

Je travaille sur une base Access 2.0 -pas récent tout ça, je sais bien ...
hélas je n'ai pas le choix - et je souhaiterai informer l'utilisateur d'un
msgbox lorsqu'il n'y a pas de résultat dans un sous formulaire ou un état
(les deux basés sur des requêtes).

Quelqu'un aurait il rencontré ce problème ou une solution par code VBA
(utilisation de la fonction recordcount ?) ou par macro ?

Merci de votre aide,

Cordialement,

Mathilde P.

4 réponses

Avatar
Pierre CFI [mvp]
bonjour
un Dcount ou RechDom sur ta req, doit marcher aussi

If Dcount("*","nomreq") = 0 pas d'enregistrement....

--
Pierre CFI
MVP Microsoft Access
Mail : http://cerbermail.com/?z0SN8cN53B

Site pour bien commencer
http://users.skynet.be/mpfa/
Site perso
http://access.cfi.free.fr
"mathilde" a écrit dans le message de news: br1bud$lb3$
Bonjour à tous et toutes,

Je travaille sur une base Access 2.0 -pas récent tout ça, je sais bien ...
hélas je n'ai pas le choix - et je souhaiterai informer l'utilisateur d'un
msgbox lorsqu'il n'y a pas de résultat dans un sous formulaire ou un état
(les deux basés sur des requêtes).

Quelqu'un aurait il rencontré ce problème ou une solution par code VBA
(utilisation de la fonction recordcount ?) ou par macro ?

Merci de votre aide,

Cordialement,

Mathilde P.




Avatar
\(¯°¥°¯\)
Bonjour,
Sous Access 2.0 comme sur les versions suivantes recordcount renvoie 0 s'il
n'y a pas d'enregistrement dans le recordset.
S'il y a des enregistrements recordcount renvoie le nombre d'enregistrements
à condition de s'être préalablement placé sur le dernier enregistrement en
utilisant la la méthode Movelast
Le code sous ACCESS 2.0 pourrait donc être le suivant:
Dim rs as recordset
set rsÛEngine(0)(0).Openrecordset("NomDeLaRequêteOuDeLaTable")
If rs.Recordcount=0 Then
MsgBox "Il n'y a pas d'enregistrement"
Else
rs.Movelast
MsgBox "Il y a " & rs.Recordcount & " enregistrements"
End if
En espérant que ça pourra t'aider.
Al.

"mathilde" a écrit dans le message de
news:br1bud$lb3$
Bonjour à tous et toutes,

Je travaille sur une base Access 2.0 -pas récent tout ça, je sais bien ...
hélas je n'ai pas le choix - et je souhaiterai informer l'utilisateur d'un
msgbox lorsqu'il n'y a pas de résultat dans un sous formulaire ou un état
(les deux basés sur des requêtes).

Quelqu'un aurait il rencontré ce problème ou une solution par code VBA
(utilisation de la fonction recordcount ?) ou par macro ?

Merci de votre aide,

Cordialement,

Mathilde P.




Avatar
mathilde
Merci pour votre aide précieuse, j'ai bien réussi à faire ce que je voulais
grace à vos bons conseils.

Cordialement,

Mathilde.
Avatar
Jeff
Bonjour

Tu peux tester à l'ouverture du formulaire s'il contient
des enregistrements

Docmd Openform "nomduformulaire"
If Forms![nomduformulaire].RecordSetClone.Recordcount = 0 Then
Msgbox "Aucun enregistrement",16
Docmd Close A_FORM,"nomduformulaire"
Exit Sub
end If

Tu peux aussi utiliser cette méthode dans une macro.

Note: On peut aussi faire
...
If Forms![nomduformulaire].RecordsetClone.BOF then
Msgbox ...
...

Mais cette solution semble dans certains cas poser problème.

Cordialement

Jeff

"mathilde" vient de nous annoncer :
Bonjour à tous et toutes,

Je travaille sur une base Access 2.0 -pas récent tout ça, je sais bien ...
hélas je n'ai pas le choix - et je souhaiterai informer l'utilisateur d'un
msgbox lorsqu'il n'y a pas de résultat dans un sous formulaire ou un état
(les deux basés sur des requêtes).

Quelqu'un aurait il rencontré ce problème ou une solution par code VBA
(utilisation de la fonction recordcount ?) ou par macro ?

Merci de votre aide,

Cordialement,

Mathilde P.


--
Ceci est une signature automatique de MesNews.
Site : http://mesnews.no-ip.com