Access : mise à jour année automatique !

Résolu
tyeg Messages postés 27 Statut Membre -  
tyeg Messages postés 27 Statut Membre -
Bonjour,
Je suis en train de créer une base de données pour une division scolaire et il y a quelque chose que j'aimerais faire mais je ne sais pas comment !
Voici mon problème : j'ai une table Eleves avec toutes les informations sur les élèves. Dans cette table se trouve entre autres les champs nommés "Classe" et "Degré".

Le champ classe contient les entrées suivantes :
1a / 1b / 1c / 1d / 2a / 2b / 2c / 2d / 3a / 3b / 3c
(sous forme de liste déroulante)

Le champ degré contient les entrées suivantes :
1 / 2 / 3
(sous forme de liste déroulante)

J'ai un formulaire Fiche d'élève qui contient ces champs. Ce que j'aimerais faire c'est que les entrées 1a / 1b / 1c / 1d correspondent au degré 1 de la table "Degré". C'est-à-dire que lorsque je choisis par exemple la classe 1a, le degré 1 s'entre automatiquement dans le champ Degré. Même chose pour les classe commençant par 2 et par 3 :
2a 2b 2c 2d = 2
3a 3b 3c = 3

Si vous avez compris quelque chose, j'attend vos solutions ! merci !!! :)

9 réponses

LatelyGeek Messages postés 1774 Date d'inscription   Statut Membre Dernière intervention   550
 
Ca ne sert à rien de mettre deux champs, ça crée juste un risque d'erreur. Il vaut mieux que quand tu as besoin d'avoir le degré, tu utilises la fonction Gauche(Classe;1) qui extrait le premier caractère du champ Classe...
0
tyeg Messages postés 27 Statut Membre 1
 
Merci de ton aide.

Mais ou dois-je entrer cette fonction ? dans les propriétés du champ ?
0
LatelyGeek Messages postés 1774 Date d'inscription   Statut Membre Dernière intervention   550
 
Non, il n'y a PAS de champ "degré".

Mais quand tu aurais par hasard besoin de sortir le "1" à partir de la classe "1a", tu utiliserais cette fonction dans une requête.

Si c'est pour faire des regroupements dans des états, je pense même que l'Assistant peut le faire à ta place.
0
tyeg Messages postés 27 Statut Membre 1
 
salut,

j'ai fais la requête et j'ai écrit la fonction Gauche("Classe_eleve";1) sous critères ; mais ça ne marche pas ! quand je visualise ma base de données elle est vide...
0
LatelyGeek Messages postés 1774 Date d'inscription   Statut Membre Dernière intervention   550
 
Essaye Gauche([Classe_eleve];1)
0
tyeg Messages postés 27 Statut Membre 1
 
Hum non ça marche toujours pas !!
0

Vous n’avez pas trouvé la réponse que vous recherchez ?

Posez votre question
LatelyGeek Messages postés 1774 Date d'inscription   Statut Membre Dernière intervention   550
 
quand je visualise ma base de données elle est vide...

Non, pas la base, au plus la requête... Mais tu n'as rien, ou juste un vide dans ce champ? Si c'est la requête qui ne donne rien, le problème vient d'ailleurs...
0
tyeg Messages postés 27 Statut Membre 1
 
non désolé, c'est pas la base de données qui est vide mais la requête !!! jme suis gouré !!¨
elle est vide en mode affichage de données !!!! je précise si jamais que mon champ Classe_eleve est une liste déroulante !!! contenant (1a,1b,1c,1d, etc...) c'est peut-être pour ça que Gauche([Classe];1) ne fonctionne pas ?
0
LatelyGeek Messages postés 1774 Date d'inscription   Statut Membre Dernière intervention   550
 
Ca pourrait être ça, éventuellement, si en fait le champ lié de cette liste déroulante ne contenait pas 1a, 1b etc...

Mais au risque de me répéter, si la REQUETE est vide, le problème ne vient pas de l'utilisation de la fonction gauche. Il vient du fait que ta requête est mal préparée. La preuve: Enlève le champ Gauche(..) et tu verras que tu n'as aucun résultat non plus.
0
phil2a Messages postés 98 Statut Membre 9
 
bonjour,
ce n'est pas dans la requête qu'il faut placer la fonction mais dans le contrôle DEGRE du formulaire de telle sorte que lorsqu'on sélectionne une valeur dans le contrôle CLASSE, la valeur correspondante s'affiche automatiquement dans le contrôle DEGRE. Par ex. une selection 2A affichera 2.
Il faut prévoir que le contrôle CLASSE sans sélection contient une valeur NULL.
La 2° ligne des propriétés du contrôle DEGRE sera donc :
= vraifaux(classe=NULL;NULL;Gauche(Classe;1))
0
tyeg Messages postés 27 Statut Membre 1
 
Bonjour,

j'ai entré la 2° ligne des propriétés du contrôle Degré mais je ne sais pas coment prévoir que le contrôle CLASSE contient une valeur NULL !! comment faire ?
0
tyeg Messages postés 27 Statut Membre 1
 
Rebonjour,

ça y est j'ai réussi finalement !!! j'avais juste mal entré le nom du champ Classe dans les propriétés !! =)
en tout cas merci beaucoup pour votre aide !!! ;)
0
LatelyGeek Messages postés 1774 Date d'inscription   Statut Membre Dernière intervention   550
 
Je me re-re-répète: C'est dans la requête que se situe le problème! Qu'on extraie la classe dans la requête ou le formulaire ne change rien, si la requête est vide à la base...
0
phil2a Messages postés 98 Statut Membre 9
 
Bonjour,
La requête est vide puisqu' aucune valeur n'est sélectionnée dans la liste déroulante.
0