Retour d'enregistrements par Openrecordset

Le
Manu D.
Bonjour,

"Openrecordset" ne me retourne qu'un seul enregistrement d'une table qui en
compte pourtant plusieurs centaines. Je dois avoir une erreur de syntaxe
SqlVoici le code utilisé (pour info, la table en question comprend une clé
primaire que je ne sollicite pas dans ma requête; y aurait-il un rapport?) :

strSql = "SELECT Nom,Prénom FROM E0_Employés ORDER BY Nom,Prénom;"
Set rcd = CurrentDb.OpenRecordset(strSql)

Si j'utilise "Openrecordset(NomTable), tous les enregistrements sont bien
renvoyés.
Quelqu'un peut-il m'aider?

Merci d'avance.
Vidéos High-Tech et Jeu Vidéo
Téléchargements
Vos réponses
Gagnez chaque mois un abonnement Premium avec GNT : Inscrivez-vous !
Trier par : date / pertinence
Thierry (ze Titi)
Le #6393271
Bonjour Manu D. !

strSql = "SELECT Nom,Prénom FROM E0_Employés ORDER BY Nom,Prénom;"
Set rcd = CurrentDb.OpenRecordset(strSql)
rcd.MoveLast
rcd.MoveFirst

Peut-être ?

Message du mardi 18/09/2007

Bonjour,

"Openrecordset" ne me retourne qu'un seul enregistrement d'une table qui en
compte pourtant plusieurs centaines. Je dois avoir une erreur de syntaxe
Sql...Voici le code utilisé (pour info, la table en question comprend une clé
primaire que je ne sollicite pas dans ma requête; y aurait-il un rapport?) :
...
strSql = "SELECT Nom,Prénom FROM E0_Employés ORDER BY Nom,Prénom;"
Set rcd = CurrentDb.OpenRecordset(strSql)
...
Si j'utilise "Openrecordset(NomTable), tous les enregistrements sont bien
renvoyés.
Quelqu'un peut-il m'aider?

Merci d'avance.


--
Cordialement,
Thierry

Tout pour réussir avec Access :
http://www.mpfa.info

Manu D.
Le #6393241
Bonjour ze Titi et un grand merci!

Je suis débutant et j'aimerai bien comprendre pourquoi il a fallut en passer
par là...
Peux tu me dire pourquoi ma requête initiale était insuffisante?



Bonjour Manu D. !

strSql = "SELECT Nom,Prénom FROM E0_Employés ORDER BY Nom,Prénom;"
Set rcd = CurrentDb.OpenRecordset(strSql)
rcd.MoveLast
rcd.MoveFirst

Peut-être ?

Message du mardi 18/09/2007

Bonjour,

"Openrecordset" ne me retourne qu'un seul enregistrement d'une table qui en
compte pourtant plusieurs centaines. Je dois avoir une erreur de syntaxe
Sql...Voici le code utilisé (pour info, la table en question comprend une clé
primaire que je ne sollicite pas dans ma requête; y aurait-il un rapport?) :
...
strSql = "SELECT Nom,Prénom FROM E0_Employés ORDER BY Nom,Prénom;"
Set rcd = CurrentDb.OpenRecordset(strSql)
...
Si j'utilise "Openrecordset(NomTable), tous les enregistrements sont bien
renvoyés.
Quelqu'un peut-il m'aider?

Merci d'avance.


--
Cordialement,
Thierry

Tout pour réussir avec Access :
http://www.mpfa.info






Manu D.
Le #6393151
Dans mon premier traitement, j'utilisais la méthode movenext pour un
traitement sur les enregistrements; le but étant de renseigner une liste
déroulante. Mais après Openrecordset(), la valeur de "rcd.RecordCount" était
toujours à 1... Qu'est-ce que je n'ai pas compris, SVP?
...
Set ctl = Forms!Réservations.Identité
strSql = "SELECT Nom,Prénom FROM E0_Employés ORDER BY Nom,Prénom;"
Set rcd = CurrentDb.OpenRecordset(strSql)
' INFO DEBUG
' MsgBox ("Nombre d'enregistrements trouvés dans la table du personnel: "
& rcd.RecordCount)
' Création de la liste déroulante des employés
If rcd.RecordCount > 0 Then
For iLoop = 0 To rcd.RecordCount - 1
ctl.AddItem Item:=rcd.Fields!Nom & " " & rcd.Fields!Prénom
rcd.MoveNext
Next iLoop
Else
...
End If
...
Merci pour toute lumière apportée à ma pauvre vieille lanterne.

Bonjour ze Titi et un grand merci!

Je suis débutant et j'aimerai bien comprendre pourquoi il a fallut en passer
par là...
Peux tu me dire pourquoi ma requête initiale était insuffisante?



Bonjour Manu D. !

strSql = "SELECT Nom,Prénom FROM E0_Employés ORDER BY Nom,Prénom;"
Set rcd = CurrentDb.OpenRecordset(strSql)
rcd.MoveLast
rcd.MoveFirst

Peut-être ?

Message du mardi 18/09/2007

Bonjour,

"Openrecordset" ne me retourne qu'un seul enregistrement d'une table qui en
compte pourtant plusieurs centaines. Je dois avoir une erreur de syntaxe
Sql...Voici le code utilisé (pour info, la table en question comprend une clé
primaire que je ne sollicite pas dans ma requête; y aurait-il un rapport?) :
...
strSql = "SELECT Nom,Prénom FROM E0_Employés ORDER BY Nom,Prénom;"
Set rcd = CurrentDb.OpenRecordset(strSql)
...
Si j'utilise "Openrecordset(NomTable), tous les enregistrements sont bien
renvoyés.
Quelqu'un peut-il m'aider?

Merci d'avance.


--
Cordialement,
Thierry

Tout pour réussir avec Access :
http://www.mpfa.info








Thierry (ze Titi)
Le #6393071
Le MoveLast force à parcourir tout le RecordSet, ça te permet d'être
certain d'avoir le bon compte. Par contre, te dire pourquoi Access se
comporte de la sorte n'est pas de mon ressort... Désolé...

Dans ton message du mardi 18/09/2007 jour de Sainte Nadège, tu as pris l'initiative de
nous narrer les faits suivants:
Dans mon premier traitement, j'utilisais la méthode movenext pour un
traitement sur les enregistrements; le but étant de renseigner une liste
déroulante. Mais après Openrecordset(), la valeur de "rcd.RecordCount" était
toujours à 1... Qu'est-ce que je n'ai pas compris, SVP?
...
Set ctl = Forms!Réservations.Identité
strSql = "SELECT Nom,Prénom FROM E0_Employés ORDER BY Nom,Prénom;"
Set rcd = CurrentDb.OpenRecordset(strSql)
' INFO DEBUG
' MsgBox ("Nombre d'enregistrements trouvés dans la table du personnel: "
& rcd.RecordCount)
' Création de la liste déroulante des employés
If rcd.RecordCount > 0 Then
For iLoop = 0 To rcd.RecordCount - 1
ctl.AddItem Item:=rcd.Fields!Nom & " " & rcd.Fields!Prénom
rcd.MoveNext
Next iLoop
Else
...
End If
...
Merci pour toute lumière apportée à ma pauvre vieille lanterne.

Bonjour ze Titi et un grand merci!

Je suis débutant et j'aimerai bien comprendre pourquoi il a fallut en passer
par là...
Peux tu me dire pourquoi ma requête initiale était insuffisante?



Bonjour Manu D. !

strSql = "SELECT Nom,Prénom FROM E0_Employés ORDER BY Nom,Prénom;"
Set rcd = CurrentDb.OpenRecordset(strSql)
rcd.MoveLast
rcd.MoveFirst

Peut-être ?

Message du mardi 18/09/2007

Bonjour,

"Openrecordset" ne me retourne qu'un seul enregistrement d'une table qui
en compte pourtant plusieurs centaines. Je dois avoir une erreur de
syntaxe Sql...Voici le code utilisé (pour info, la table en question
comprend une clé primaire que je ne sollicite pas dans ma requête; y
aurait-il un rapport?) : ...
strSql = "SELECT Nom,Prénom FROM E0_Employés ORDER BY Nom,Prénom;"
Set rcd = CurrentDb.OpenRecordset(strSql)
...
Si j'utilise "Openrecordset(NomTable), tous les enregistrements sont bien
renvoyés.
Quelqu'un peut-il m'aider?

Merci d'avance.


--
Cordialement,
Thierry

Tout pour réussir avec Access :
http://www.mpfa.info







--
Cordialement,
Thierry

Tout pour réussir avec Access :
http://www.mpfa.info




Manu D.
Le #6393001
Merci pour ta bonne volonté. Il n'y a pas a être désolé puisque tu m'as tout
de même sorti d'une impasse, alors merci.
Maintenant, à moi la joie frémissante de me précipiter vers de nouveaux
problèmes!

Cordialement.



Le MoveLast force à parcourir tout le RecordSet, ça te permet d'être
certain d'avoir le bon compte. Par contre, te dire pourquoi Access se
comporte de la sorte n'est pas de mon ressort... Désolé...

Dans ton message du mardi 18/09/2007 jour de Sainte Nadège, tu as pris l'initiative de
nous narrer les faits suivants:
Dans mon premier traitement, j'utilisais la méthode movenext pour un
traitement sur les enregistrements; le but étant de renseigner une liste
déroulante. Mais après Openrecordset(), la valeur de "rcd.RecordCount" était
toujours à 1... Qu'est-ce que je n'ai pas compris, SVP?
...
Set ctl = Forms!Réservations.Identité
strSql = "SELECT Nom,Prénom FROM E0_Employés ORDER BY Nom,Prénom;"
Set rcd = CurrentDb.OpenRecordset(strSql)
' INFO DEBUG
' MsgBox ("Nombre d'enregistrements trouvés dans la table du personnel: "
& rcd.RecordCount)
' Création de la liste déroulante des employés
If rcd.RecordCount > 0 Then
For iLoop = 0 To rcd.RecordCount - 1
ctl.AddItem Item:=rcd.Fields!Nom & " " & rcd.Fields!Prénom
rcd.MoveNext
Next iLoop
Else
...
End If
...
Merci pour toute lumière apportée à ma pauvre vieille lanterne.

Bonjour ze Titi et un grand merci!

Je suis débutant et j'aimerai bien comprendre pourquoi il a fallut en passer
par là...
Peux tu me dire pourquoi ma requête initiale était insuffisante?



Bonjour Manu D. !

strSql = "SELECT Nom,Prénom FROM E0_Employés ORDER BY Nom,Prénom;"
Set rcd = CurrentDb.OpenRecordset(strSql)
rcd.MoveLast
rcd.MoveFirst

Peut-être ?

Message du mardi 18/09/2007

Bonjour,

"Openrecordset" ne me retourne qu'un seul enregistrement d'une table qui
en compte pourtant plusieurs centaines. Je dois avoir une erreur de
syntaxe Sql...Voici le code utilisé (pour info, la table en question
comprend une clé primaire que je ne sollicite pas dans ma requête; y
aurait-il un rapport?) : ...
strSql = "SELECT Nom,Prénom FROM E0_Employés ORDER BY Nom,Prénom;"
Set rcd = CurrentDb.OpenRecordset(strSql)
...
Si j'utilise "Openrecordset(NomTable), tous les enregistrements sont bien
renvoyés.
Quelqu'un peut-il m'aider?

Merci d'avance.


--
Cordialement,
Thierry

Tout pour réussir avec Access :
http://www.mpfa.info







--
Cordialement,
Thierry

Tout pour réussir avec Access :
http://www.mpfa.info









Publicité
Poster une réponse
Anonyme