depuis 2 jours j'ai un problème sur une requête sous access avec un DAO.openrecordset.
Voici le problème :
1. d'abord la table TABLE1
champ1 | champ2 | champ 3
----------------------------
1 | y |z
----------------------------
1 | y |x
----------------------------
1 | y |w
----------------------------
1 | y |v
----------------------------
1 | y |u
----------------------------
2 | a |b
----------------------------
2 | a |c
----------------------------
2 | a |d
2. puis le code
je cherche a afficher tous les résultats avec la contrainte sur le champ1
Private Sub CmdFirst_Click()
Dim rsAjout As DAO.Recordset
Set rsAjout = CurrentDb.OpenRecordset("SELECT * FROM TABLE1 WHERE champ2='y' ;")
If rsAjout.RecordCount = 0 Then Exit Sub
rsAjout.MoveFirst
Me.EEnr1.Caption = 1
Me.EEnr2.Caption = rsAjout.RecordCount
Me.Liste1.Value = rsAjout(1)
Me.Liste2.Value = rsAjout(2)
rsAjout.Close
Set rsAjout = Nothing
End Sub
le problème que je comprend pas c'est qu'il m'indique qu'il n'y a seulement 1 seul enregistrement alors qu'il devrait en trouver 5 !!!
Je ne vois pas d'où peut provenir le problème.
Si vous avez une solution je suis preneur.
D'avance un grand merci,
RB
A voir également:
Currentdb.openrecordset
Currentdb.openrecordset( select * from - Meilleures réponses
Voila comment je ferais moi
Mais je te promet pas que ca marche car pas essayer
Private Sub CmdFirst_Click()
Dim rsAjout As DAO.Recordset
Set rsAjout = CurrentDb.OpenRecordset("SELECT * FROM TABLE1 WHERE champ2='y' ;")
rsAjout.MoveFirst
while rsAjout.EOF = false 'boucle tant qu'on est pas arriver au dernier enregistrement
If rsAjout.RecordCount = 0 Then Exit Sub
"ton code "
rsAjout.Movenext
wend
rsAjout.Close
Set rsAjout = Nothing
End Sub
ou sinn tu peut utiliser rsAjout.Movelast avant ton recordcount ce qui t'inquera le nombre d'enregistrement à selectionné
Je te promet rien que ca marche
a+