cs_Fabio
Messages postés12Date d'inscriptionmercredi 23 janvier 2002StatutMembreDernière intervention 2 février 2002 30 janv. 2002 à 17:42
Avec DAO tu peux faire :
Sub a()
Dim db As database
Dim rs As Recordset
Dim nombredelig As Long
Set db = CurrentDb()
Set rs = db.openrecordset("client")
rs.MoveLast
nombredelig = rs.RecordCount
Debug.Print nombredelig
rs.Close
Set rs = Nothing
Set db = Nothing
End Sub
Tu dois avoir une référence dans le code à Microsoft DAO 3.6
Il y aussi des solution avec ADO ou par une requête COUNT.
cs_didierm
Messages postés21Date d'inscriptionmercredi 30 janvier 2002StatutMembreDernière intervention28 février 2006 30 janv. 2002 à 18:07
merci pour ta reponse mais j'ai toujours des pb
- les types de variable database et recordset ne sont pas reconnus(dim................)
- le resultat retourné est 5424 alors qu'il y a alors qu'i y a 2539 enregistrements
le nombre d'enregistrement est tres important pour moi car je dois passer sur tous les enregistrements pour verifier la valeur d'une zone (peut etre as tu une autre idée plustot que de compter les enresistrements)
cs_Fabio
Messages postés12Date d'inscriptionmercredi 23 janvier 2002StatutMembreDernière intervention 2 février 2002 30 janv. 2002 à 19:06
Pour avoir le nombre exact il te faut absolument faire le rs.movelast (sinon on peut avoir des surprises avec la propriété rs.recordcount. Pour les dim non reconnus il faut que tu contrôles dans le menu outils->référence que tu as bien cochés Microsoft DAO 3.6 Object Library. C'est par contre suprenant que tes dim ne soient pas reconnu, mais que tu puisses tout de même obtenir un résultat ?? Cela devrait bloquer à la compilation !!!