Remplir champs automatique sous access

[Fermé]
Signaler
Messages postés
37
Date d'inscription
jeudi 24 juillet 2008
Statut
Membre
Dernière intervention
11 mars 2009
-
Messages postés
37
Date d'inscription
jeudi 24 juillet 2008
Statut
Membre
Dernière intervention
11 mars 2009
-
Bonjour,
actuellement en stage de fin d'année, je souhaites resoudre un probleme qui me taquine sous access depuis quelques jours.

en effet j'ai une base de données dans cette base de données il y a une seulement qu'une seule table nommée patient. dans cette table il y a 6 champs : IPP(numero),Nom,Prenom,Naissance,Sexe et Nomjeunefile.

Je souhaites que quant je remplir le champs Nom et Prenom cela me remplis automatiquement les autres champs.

Merci de votre aide

Zehor

9 réponses

salut

Tu fais un code VB qui sélectionne l'enregistrement précis et aprés tu affecte le résultat à ton formulaire

Set db=Currentdb

sql=SELECT * FROM PAtient where Nom="& Forms!form1!Nom & "AND Prenom="& Forms!forms1!Prenom
set rs=db.Openrecordset(sql)
rs.Movefirst
While Not rs.EOF
IPP =rs!ipp
Naissance=rs!naissance
Sexe=rs!sexe
Nomjf=rs!nom_jeune_fille
rs.MoveNext
Wend
forms!form1!ipp=IPP
forms!form1!Naissance=Naissance
forms!form1!sexe=Sexe
forms!forms1!Nomjf=Nomjf



Je pense que avec ça tu devrai te débrouiller
1
Merci

Quelques mots de remerciements seront grandement appréciés. Ajouter un commentaire

CCM 41713 internautes nous ont dit merci ce mois-ci

Messages postés
37
Date d'inscription
jeudi 24 juillet 2008
Statut
Membre
Dernière intervention
11 mars 2009

WINMAN j'ai bien testé ce que tu ma conseillé concernant la requete en mode sql elle me retourne null sur tous les champs.
je peux tenvoé ma base stv.
>
Messages postés
37
Date d'inscription
jeudi 24 juillet 2008
Statut
Membre
Dernière intervention
11 mars 2009

ok envoi moi ton adresse
Messages postés
37
Date d'inscription
jeudi 24 juillet 2008
Statut
Membre
Dernière intervention
11 mars 2009

As tu recu mon adresse .

merci cordialement
Messages postés
37
Date d'inscription
jeudi 24 juillet 2008
Statut
Membre
Dernière intervention
11 mars 2009

IPP numerique(zone de texte)
Nom texte de 128(liste deroulante
Prenom texte de 128(liste deroulante)
Naissance date/heure(zone de texte)
Sexe texte de 1(m ou f)(zone de texte)
Nomjeunefille texte de 128 (zone de texte)

jpenser que tavais disparu ne me laisse pas tomber sur un probleme que je n'assimile pas.

merci cordialement
Messages postés
37
Date d'inscription
jeudi 24 juillet 2008
Statut
Membre
Dernière intervention
11 mars 2009

le fait de tout mettre en zone de texte ne marrange g essaye sans succes.

bon ba grave WINMAN je vais faire le necessaire.

le probleme vient surment de la requete.

si seulement javer une solution je serai le plus eureu
Private sub comande5_clik()

Dim db As Database
Dim rs As Recordset
Dim sql As String
Dim IPP as string
Dim naissance as string
Dim Sexe as string
Dim Nomjf as string

Code ici

End Sub

je connais pas le format de tes champ alors j'ai considére que c'était du texte
Messages postés
37
Date d'inscription
jeudi 24 juillet 2008
Statut
Membre
Dernière intervention
11 mars 2009

tu peu maider winman.

je t envoyé le probleme
>
Messages postés
37
Date d'inscription
jeudi 24 juillet 2008
Statut
Membre
Dernière intervention
11 mars 2009

C'est résolu ton problème ou pas ? a lala zhor
Messages postés
37
Date d'inscription
jeudi 24 juillet 2008
Statut
Membre
Dernière intervention
11 mars 2009

ok merci winman pour ta reponse concernant "form!nomformulaire!nomzone"

y a une autre erreur dans le code que voici :

Set rs = db.OpenRecordset(sql)
Messages postés
37
Date d'inscription
jeudi 24 juillet 2008
Statut
Membre
Dernière intervention
11 mars 2009

il m'informe qu'il ny a pas d'enregistrement en cours.

quant j'enleve rs.movefirst il me remplit uniquement le champs IPP est le champs naissance. deplus les valeurs sont a null.

STP une solution
il faut que tu adapte le code avec le nom de tes formulaires et des zone de texte

Forms!Nomdeformulaire!nomzone

exemple, si ton formulaire s'appelle form_principal et que la zone texte pour insérer la nom s'appelle Texte12 tu aura

Forms!form_principal!texte12

Pour savoir les noms du fai clique droit sur la zone de texte, propriété, dans l'onglet toutes et tu vois le nom de la zone
ce'st pas avec le recordset le probléme, c'est la requete qui ne passe pas, vérifie que les noms des champs soit bien Nom et Prénom ensuite essaie avec ça si ce sont des chaine de caractére

sql=SELECT * FROM PAtient where Nom="& chr(34) & Forms!form1!Nom &chr(34) & "AND Prenom="& chr(34) & Forms!forms1!Prenom & chr(34)

Si ça marche pas essaie en passant par des variables

N=Forms!form1!Nom
P=Forms!forms1!Prenom
sql=SELECT * FROM PAtient where Nom="& chr(34) & N &chr(34) & "AND Prenom="& chr(34) & P & chr(34)
verifie que ce spit des zones de textes, clique gauche, remplacer pr, zone de texte
Messages postés
37
Date d'inscription
jeudi 24 juillet 2008
Statut
Membre
Dernière intervention
11 mars 2009

Merci WINMAN pour efficacité.

Cependant je n'ai pas compris la procedure a faire.
je reprends, tu vas dans ton formulaire en mode creation, tu clique gauche sur une de tes listes (rectangle blanc qui sera completer une fois la programme executer) et tu fais Remplacer par/Zone de texte.
ça doit être à cause de ça qu'il n'y a rien d'écrit.
Por le MoveFirst, il te sert à positionner le pointeur sur le premier enregistrement de la requete tu peux ainsi parcourir tout la requete avec une boucle while.
Si ti ny arrive toujours pas envoi moi ta base
Je pense que l'erreur Movefirst vient da la requete sql, essaie de la tester avec des nom qui existe, tu copie celle du code, tu va dans requete, nouveau, tu passe en mode sql, puis tu colle, enleve les guillemet et les char, et remplace les Form!forms1!champ1 par des noms et prenom qui existe dans la table, tu execute et tu regarde s'il trouve un résultat. Si c'est vide l'erreur vient de la
Messages postés
37
Date d'inscription
jeudi 24 juillet 2008
Statut
Membre
Dernière intervention
11 mars 2009

Winman je nai plus de reponse de toi y a til un probleme.

alalalala j'espere que tu ne ma pas ounlié car sa serai dommage
Envoie moi la structure exacte de ta base (champ format)
met tout en zone de texte si ça marche pas aprés ça je sais plus quoi faire