Difference entre deux dates

Bonjour,

Sur une requête je voudrais obtenir l’âge d’un adhérent en fonction
d’une date fixe « 01/10/20217 » et d’une date de naissance.

Exemple :
01/10/2017- 01/10/2001 = 16 a
01/10/2017- 03/10/2001 = 16 a et 3 j
01/10/2017- 01/11/2001 = 16 a et 1 m

Merci pour votre aide.

Salutations

6 réponses

  • Votes
  • Date
  • Date décroissante
  1. Bonjour,

    En effet il s’agit d’un champ de ma table.

    Mais oublions tout ça pour le moment car je voudrais savoir si en créant une constance du type :

    Public Const CONS_DROITVOTE As Variant = "2017;10;1"

    Je pourrais utiliser la fonction dateserail.

    J’ai mis des virgules parque lorsque j’utilise ce code Age: Année(SérieDate(2017.10.1))- Année(DateNaissance) & " a, " les points ne passent pas, en les remplaçants par des
    Virgules J’obtient bien l’année.

    En faisant cela ,

    Age: Année(SérieDate("CONS_DROITVOTE"))-Année([Datenaissance])

    Message d’erreur : le nombre d’arguments n’est pas correct.

    Merci pour votre aide, et votre patience/

    Salutations
    1. Contributeur
      la fonction dateserial te permet de créer une date à partir de trois nombres.
      si calculdroit est un champ (de type date) dans ta table, pourquoi ne pas faire
      select year(datedenaissance-calculdroit)
  2. Bonjour,

    J’ai utilisé le modèle de yb_g sur un champ de ma requête, mais je voudrais prendre la
    valeur 2017,10,1 dans le champ CalculDroit de la rqt .

    Ca ne fonctionne pas.

    Age: year(datenaissance-dateserial("CalculDroit"))

    Salutations
    1. Contributeur
      je ne sais pas ce que c'est qu'un champ dans une requête. peux-tu m'expliquer, et expliquer ton contexte?
      "Ca ne fonctionne pas": message d'erreur, résultat inattendu?
  3. bonjour
    dans une requete tu inscris ceci
    Age: (Date()-[Date de naissance])/365,25
    cela te donne l'age en année
    1. Désolé pour cet oubli.

      J'utilise une base access 2007;

      Salutations
      1. Contributeur
        select year(datedenaissance-dateserial(2017,10,1)) & "a, "
         & month(datedenaissance-dateserial(2017,10,1)) & "m, " 
        & day(datedenaissance-dateserial(2017,10,1)) & "j." as age from ...
    2. Contributeur
      bonsoir,
      quel logiciel de base de données utilises-tu?
      comment ces dates sont-elles enregistrées?
      peut-être:
      select datedenaissance-dateserial(2017,10,1) as age from ...