Bonjour,
Juste pour info, dans une base de données avec ACCESS je calcul les
âges des adhérents dans une requête Mise à jour avec cette formule:
(Date()-[TABLE TOUTES INFOS ELEVES]![Date naissance])/"365,25"
Ce n'est pas très loin de l'âge réel....;-)
Avec cette question j'aurai appris des choses et c'est bien là l'intérêt...
Claude Fricard
Le 07/02/2013 11:04, christianwtd a écrit :
Le 05/02/2013 11:11, Claude FRICARD a écrit :
Claude
Le 05/02/2013 09:04, pierre-yves samyn a écrit :
Bonjour
fricard Claude wrote
La requête telle que je l'ai définie DATEDIFF( 'year', "date de
naissance".... donne bien le résultat escompté à savoir l'âge. (c'est
d'ailleurs le code dans l'exemple fourni calcâge.png) .
Il me semble qu'une personne née le 14/03/2007 n'aura 6 ans que...
le 14/03/07 ?
Or DATEDIFF telle que tu l'emploies (et c'est pour illustrer cela
que j'ai repris cette syntaxe dans la copie d'écran) donne 6 et non 5
c'est ce qui résulte aussi de l'exécution de l'exemple que tu as
transmis :
http://nabble.documentfoundation.org/file/n4034400/CalcAge.png
le gamin qui est de mars 2007 a déjà 6 ans ...et même celui qui est
d'Aout. C'est le résultat que j'obtiens également. Quant à la copie
d'écran
Bonjour,
Désolé d'intervenir dans ce fil, mais je pense que certains d'entre
vous font fausse route dans les calculs d'ages. Avec Calc ça avait
fait l'objet de longues discussions. Je ne connais pas suffisamment
Base pour dire ce qu'il faut faire, mais je peux donner les
indications avec le tableur. Il suffit (!) d'adapter à la suite.
Bien que le site soit inactif, les infos sont toujours valables:
http://christianwtd.free.fr/index.php?rubrique=DebFonctions02
dans la rubrique : Attention au piège (2), j'écrivais :
Le calcul d'âge (année, mois, jour) est une source fréquente d'erreur.
On a tendance à soustraire la date actuelle à la date de naissance,
puis si nécessaire d'afficher au format Jour / Mois / Année. Cette
méthode n'est que très approximative et fausse. Démonstration. Une
personne est née le 25 janvier 1930 (soit la valeur numérique 10983).
Si nous sommes le 15 septembre 2010 (soit la valeur numérique 40436).
Avec une simple soustraction, nous obtenons 80 ans 8 mois et 20 jours.
En fait nous appliquons une valeur numérique (résultat de
soustraction), 29453 dans ce cas précis, qui correspond à la date du
20/08/1980.
En espérant aider un peu,
Bon surf,
Christian
--
Envoyez un mail à users+h...@fr.libreoffice.org pour savoir comment vous
désinscrire
Les archives de la liste sont disponibles à
http://listarchives.libreoffice.org/fr/users/
Tous les messages envoyés sur cette liste seront archivés publiquement et ne
pourront pas être supprimés