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 :

calcul de l'age dans un formulaire


Sujet :

Access

  1. #1
    Membre à l'essai
    Profil pro
    Inscrit en
    Octobre 2003
    Messages
    21
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Octobre 2003
    Messages : 21
    Points : 16
    Points
    16
    Par défaut calcul de l'age dans un formulaire
    Bonjour à tous,

    j'ai un formulaire de saisie de dossiers. un champ date de naissance. un champ age.
    Sur la saisie de la date de naissance, l'age apparait dans le champ age grâce à ça :

    Function CalculAge(ByVal Dat1 As Date, ByVal Dat2 As Date) As Integer
    If Month(Dat2) > Month(Dat1) Then
    CalculAge = DateDiff("yyyy", Dat1, Dat2)
    ElseIf Month(Dat2) = Month(Dat1) Then
    If Day(Dat2) >= Day(Dat1) Then
    CalculAge = DateDiff("yyyy", Dat1, Dat2)
    Else
    CalculAge = DateDiff("yyyy", Dat1, Dat2) - 1
    End If
    Else
    CalculAge = DateDiff("yyyy", Dat1, Dat2) - 1
    End If
    End Function

    Problème : dans 10 ans il aura toujours le même age.

  2. #2
    Membre expérimenté

    Profil pro
    Inscrit en
    Mars 2006
    Messages
    1 350
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mars 2006
    Messages : 1 350
    Points : 1 701
    Points
    1 701
    Par défaut
    Bonjour,

    Essaies avec :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    Function CalculAge(varDateNaiss As Date) As Integer
    If IsNull(varDateNaiss) Then CalculAge = 0: Exit Function
    CalculAge = DateDiff("YYYY", varDateNaiss, Date) + (DateSerial(Year(Date), Month(varDateNaiss), Day(varDateNaiss)) > Date)
    End Function
    Cordialement.

  3. #3
    Rédacteur/Modérateur
    Avatar de argyronet
    Homme Profil pro
    Panseur de bobos en solutions ETL
    Inscrit en
    Mai 2004
    Messages
    5 124
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Panseur de bobos en solutions ETL
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Mai 2004
    Messages : 5 124
    Points : 12 176
    Points
    12 176
    Billets dans le blog
    5
    Par défaut
    Bonjour,

    Le fonction de base est:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    Format((Now-DateNaissance)\365.25, "0 ans")
    conditionné par un If si
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    (Now-DateNaissance)\365.25 = 1
    pour mettre "ans" au singulier...

    Argy

Discussions similaires

  1. Réponses: 8
    Dernier message: 03/07/2013, 17h46
  2. [AC-2003] Calculs sur des champs dans un formulaire
    Par Jeanpierre71 dans le forum IHM
    Réponses: 4
    Dernier message: 04/08/2011, 15h55
  3. [AC-97] Calcul d'un champ dans un formulaire
    Par Oliiive dans le forum IHM
    Réponses: 7
    Dernier message: 20/05/2010, 14h03
  4. Réponses: 0
    Dernier message: 25/01/2008, 10h09
  5. [VBA] Calcul d'une durée dans un formulaire
    Par Platon93 dans le forum Access
    Réponses: 2
    Dernier message: 16/12/2006, 16h53

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