IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Access Discussion :

Comment modifier automatiquement un champs en fonction de la valeur d'un autre champs


Sujet :

Access

  1. #1
    Nouveau Candidat au Club
    Inscrit en
    Décembre 2006
    Messages
    1
    Détails du profil
    Informations forums :
    Inscription : Décembre 2006
    Messages : 1
    Points : 1
    Points
    1
    Par défaut Comment modifier automatiquement un champs en fonction de la valeur d'un autre champs
    Bonjour,
    Je suis un "débutant avancé" et je suis en train d'essayer de créer une mini application pour gérer les licenciés d'un petit club de foot.

    Pour info : 3 tables
    1. La table "Equipes" : code équipe, nom de l'équipe, nom de l'entraineur...
    2. La table "Joueurs" : Nom, Prénom,..., #code équipe#code catégorie
    3. La table "Catégorie" : Code catégorie, intitulé de la catégorie, date limite


    Mon problème :

    Je cherche un moyen pour (en fin de saison) modifier automatiquement la valeur du champs "catégorie" de la table "Joueur" en fonction du résultat d'une comparaison entre le champs "Date de naissance" de la table "Joueur" et le champs "Date limite" de la table "Catégorie".

    Pour être plus clair prenons un exemple :
    Un joueur né le 12/04/2001 appartient pour l'année 2006 à la catégorie "Débutant" car la date (de naisssance) limite pour accéder à la catégorie immédiatement supérieure ("Poussin") est 01/01/2001.
    Mais pour l'année 2007, la date limite change et devient le 01/01/2002 et donc le joueur change de catégorie en passant de "Débutant" à "Poussin".

    Je ne sais pas si je suis clair, mais merci de votre aide.

    Bruno

  2. #2
    Membre régulier
    Inscrit en
    Octobre 2006
    Messages
    171
    Détails du profil
    Informations forums :
    Inscription : Octobre 2006
    Messages : 171
    Points : 122
    Points
    122
    Par défaut
    A mon avis le champ catégorie devient un champ calculé puisque dépendant d'autre paramètre qui le font évoluer. Donc il est inutile de le stocker dans une table mais il devient nécessaire de le calculer dans les formulaires et les états.

  3. #3
    Membre averti Avatar de @rkane
    Homme Profil pro
    developpeur amateur dans mon cadre professionnel
    Inscrit en
    Juin 2006
    Messages
    521
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 64
    Localisation : France, Val de Marne (Île de France)

    Informations professionnelles :
    Activité : developpeur amateur dans mon cadre professionnel
    Secteur : Administration - Collectivité locale

    Informations forums :
    Inscription : Juin 2006
    Messages : 521
    Points : 403
    Points
    403
    Par défaut
    oui je verrais bien un champ independant calculé à la volée... pas besoin de le stocker...
    ex :
    sur afterUpdate du champ date de naissance,
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    if DateNaissance.Value < DernierJourAnnee () then
    me.Categorie = "Poussin"
    Excuses me rappelles plus pour le dernier jour de l'année
    bon courage


  4. #4
    Rédacteur/Modérateur

    Avatar de Heureux-oli
    Homme Profil pro
    Contrôleur d'industrie
    Inscrit en
    Février 2006
    Messages
    21 087
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 59
    Localisation : Belgique

    Informations professionnelles :
    Activité : Contrôleur d'industrie
    Secteur : Aéronautique - Marine - Espace - Armement

    Informations forums :
    Inscription : Février 2006
    Messages : 21 087
    Points : 42 926
    Points
    42 926
    Par défaut
    Je pense que les jours n'ont aucune importance, seule l'année est importante, les limites seront toujours 01/01/xxxx

    Donc il importe de calculer les années des catégories en fonction de l'année en cours.


    Ex

    Poussin 2006 -5 pour cette année par contre, pour l'an prochain, ce sera 2007 -5

    Avec 5 étant une constante et 2006 Year()


    Pareil pour le reste.
    J'ai pas encore de décodeur, alors, postez en clair ! Comment mettre une balise de code ?
    Débutez en VBA

    Mes articles


    Dans un MP, vous pouvez me dire que je suis beau, ... mais si c'est une question technique je ne la lis pas ! Vous êtes prévenus !

  5. #5
    Membre averti Avatar de @rkane
    Homme Profil pro
    developpeur amateur dans mon cadre professionnel
    Inscrit en
    Juin 2006
    Messages
    521
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 64
    Localisation : France, Val de Marne (Île de France)

    Informations professionnelles :
    Activité : developpeur amateur dans mon cadre professionnel
    Secteur : Administration - Collectivité locale

    Informations forums :
    Inscription : Juin 2006
    Messages : 521
    Points : 403
    Points
    403
    Par défaut
    Slt Heureux Oli
    oui effectivement tu as raison, si la date butoir est le 31 decembre, pas la peine de s'embeter avec le jour et le mois une simple difference entre l'annee de naissance et et l'annee en cours suffit.
    On peut meme faire reference à une table des categories en fonctions des ages , non ? qu'est-ce que t'en penses ? Enfin, ça depend du nombre de categories... faut voir...


  6. #6
    Membre régulier
    Profil pro
    Inscrit en
    Décembre 2006
    Messages
    130
    Détails du profil
    Informations personnelles :
    Âge : 74
    Localisation : France

    Informations forums :
    Inscription : Décembre 2006
    Messages : 130
    Points : 70
    Points
    70
    Par défaut
    Bonjour totoy et les autres

    J'utilise ce code

    if DateNaissance.Value > 96 () then
    me.Categorie = "Poussin"

    @+
    Ric21

Discussions similaires

  1. Réponses: 3
    Dernier message: 26/07/2013, 17h13
  2. Réponses: 2
    Dernier message: 18/06/2012, 10h28
  3. Réponses: 13
    Dernier message: 24/09/2010, 22h07
  4. Réponses: 2
    Dernier message: 13/08/2009, 09h24
  5. Réponses: 1
    Dernier message: 23/04/2007, 10h13

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo