Le 27/02/2012 15:17, jeanmi2403 a écrit :
Bonjour,
...
Effectivement, CALC fait bien la soustraction, mais donne un résultat en
jours....
Ce qui ne réjouit pas les services dans lesquels on calcule les anciennetés,
qui doivent être en années/mois/jours *REELS*, années bissextiles
comprises.....
...
Jean-Michel, hurluberlu est-parisien....
LibO 3.4.3 Windows 7 Familiale Premium SP1 x64
OOo 3.3 XP SP2
C'est pour ça que j'avais écris ceci :
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.
Pour avoir un résultat précis, il faut employer une formule (si la date
de naissance est en A1): =(ANNEES(A1; MAINTENANT();0)) & " ans " &
(NB.MOIS(A1; MAINTENANT();0) - (ANNEES(A1; MAINTENANT(); 0))*12) & "
mois " & (SI(JOUR(MAINTENANT()) - JOUR(A1) >=0; JOUR(MAINTENANT()) -
JOUR(A1); JOUR(MAINTENANT()) + (JOURSDANSMOIS(MOIS.DECALER
(MAINTENANT(); -1)) - JOUR(A1)))) & " jours"
Cette fois-ci, nous avons le bon résultat : 80 ans 6 mois 13 jours. Pas
très simple, mais efficace. Il existe d'autres formules.
Bon surf,
Christian
--
Visitez http://christianwtd.free.fr/ pour débuter avec Calc, de LibreOffice ou
OpenOffice.org
--
Envoyez un mail à [email protected] pour savoir comment vous
désinscrire
Les archives de la liste sont disponibles à
http://listarchives.libreoffice.org/fr/discuss/
Tous les messages envoyés sur cette liste seront archivés publiquement et ne
pourront pas être supprimés