leubaa
Messages postés24Date d'inscriptionmardi 29 juillet 2003StatutMembreDernière intervention20 mai 2005
-
20 août 2003 à 14:59
leubaa
Messages postés24Date d'inscriptionmardi 29 juillet 2003StatutMembreDernière intervention20 mai 2005
-
21 août 2003 à 10:02
Bonjour,
J'ai définis une table avec une clé composé (Cod_Adresses et Cod_Enf) elle est également définit dans l'index. Cepandant lorsque je veux passer des donnees , la reference se fait uniquement sur la premiere clé ...
Voici mon code ..
'Cette fonction permet de passer les paramètres d'une table dans les champs du formulaire
'
Function InfosEnfants(num)
Dim dbs As Database
Dim donnees As DAO.Recordset
Dim Formulaire As Form
Set dbs = CurrentDb
Set donnees = dbs.OpenRecordset("Enfants")
Set Formulaire = Forms![SF Enfants]
If Not IsNull(num) Then
donnees.Index = "PrimaryKey"
donnees.Seek "=", num
If Not (donnees.EOF) Then
Formulaire![Code1] = donnees![Cod_Adresses]
Formulaire![Code2] = donnees![Cod_Enf]
Formulaire![Prenom] = donnees![Enf_Prenom]
Formulaire![DateNaissance] = donnees![Enf_DateNaissance]
Formulaire![DateEntree] = donnees![Enf_DateEntree]
Formulaire![DateSortie] = donnees![Enf_DateSortie]
End If
End If
donnees.Close
End Function
Par exemple si je clique sur l'enregistrement 31-2 ou 31-3 c'est tjs l'enregistrement 31-1 (premier de la liste) qui s'affiche ...
cs_Jack
Messages postés14006Date d'inscriptionsamedi 29 décembre 2001StatutModérateurDernière intervention28 août 201579 20 août 2003 à 16:16
Salut
Je ne connais pas trop ce style d'accès aux données, mais je pense que Num ne fait que désigner la Xème ligne de ton RecordSet, alimenté par Enfants.
Es-tu sûr que le RecordSet contient bien plusieurs enregsitrements ?
Essaye de lire la valeur donnees.RecordCount et de passer en revue les lignes avec ce petit code :
With donnees
.MoveFirst
Do While Not .EOF
Debug.Print donnees!![Cod_Adresses], donnees![Cod_Enf]
DoEvents
Loop
.MoveFirst
End With
leubaa
Messages postés24Date d'inscriptionmardi 29 juillet 2003StatutMembreDernière intervention20 mai 2005 21 août 2003 à 10:02
Salut,
Oui il y a 5 enregistrements !
Les clé sont 22-1, 22-2, 23-1, 23-2, 23-3
Si je clique sur 22-1 ou 22-2, c'est tjs 22-1 qui s'affiche
idem : si je clique sur 23-1,23-2,23-3, c'est tjs 23-1 qui s'affiche.
Vb ne reconnait pas la clé composé définit dans ma table !