Bonjour,
Je poste parceque après pas mal de recherches j'ai pas trouvé sur le web et dans la FAQ.
J'ai besoin d'ouvrir un recordset pour compter des enregistrements avec comme critère la valeur d'un contrôle dans un formulaire.
Comme ça si il y a déjà des enregistrements il sort et n'execute pas le reste.
J'ai deux problèmes :
- Sans critères (pas de WHERE machin = truc )quand je demande d'afficher le nombre de lignes il affiche 1 quelque soit le nombre d'enregistrements
- Quand je met mon critère :
Where Numbien = 'numbien.value'
où numbien.value est la valeur d'un contrôle d'un formulaire chargé
Il me m'affiche 0
Note : quand je fait la même chose en ADO ben sans critères il me renvoie bien le nombre total d'enregistrements dans la table, par contre dès que je met un critère "numbien.value" il me renvoie zéro.Voilà mon code :
Dim db As DAO.Database, rst As DAO.Recordset, fld As DAO.Field
Dim sSQL As String
Set db = DBEngine.OpenDatabase("c:\essai_leasing.mdb")
sSQL = "Select numbien From echeances Where Numbien = 'numbien.value'"
Set rst = db.OpenRecordset(sSQL, dbOpenForwardOnly, dbReadOnly)
MsgBox (rst.RecordCount)
If rst.RecordCount > 0 Then
MsgBox ("2Il semble que vous ayez déjà enregistré un échéancier." & vbCrLf & "Veuillez le supprimer pour en recréer un autre.")
rst.Close
Exit Sub
End If
Help !
Partager