Calculer l'age d'une personne dans excel
Résolu
merazig sara
Messages postés
4
Statut
Membre
-
wajdi -
wajdi -
bonjour, je désire savoir comment je pourrais calculer l'age d'une personne à partir de la date de sa naissance en utilisant l'excel.
merci pour votre aide
merci pour votre aide
19 réponses
Résumé de la discussion
La méthode fiable pour calculer l'âge à partir d'une date de naissance dans Excel est d'utiliser la fonction DATEDIF avec le critère "y".
On peut obtenir l'âge en années et les mois avec DATEDIF, par exemple =DATEDIF(A1;AUJOURDHUI();"y") pour l'âge et =DATEDIF(A1;AUJOURDHUI();"ym") pour les mois.
Une approche universelle et précise, indépendante de la version d'Excel, est =ANNEE(AUJOURDHUI())-ANNEE(A1)-SI(100*MOIS(AUJOURDHUI())+JOUR(AUJOURDHUI())>=100*MOIS(A1)+JOUR(A1);0;1).
Les méthodes utilisant 365 ou 365,25 jours peuvent introduire des écarts près des anniversaires et ne conviennent pas lorsque la précision est requise.
-
Bonjour merazig sara,
Si la date de naissance est en A1, tu peux écrire :
=ENT((AUJOURDHUI()-A1)/365)
(la personne aura 29 ans jusqu'à la veille de son anniversaire)
ou
=ARRONDI((AUJOURDHUI()-A1)/365;0)
(la personne aura 30 ans dès qu'elle sera plus près de 30 que de 29).
Etc.
L'âge d'une personne dans Excel -
Salut,
Je ne vois pas l'intérêt de relancer une discussion ouverte en 2006, mais pour argumenter tes dires "aller jusqu'au bout de ta logique" on ne s'appuie pas sur des moyennes 3*365+366/4 = 365,25 pour calculer une différence entre deux dates, ce genre de calcul donne un résultat avec des décimales que l'on doit tronquer ou arrondir pour un calcul qui ne couvre pas les nombres d'années multiple de 4
la formule est donc
=DATEDIF(A1;B1;"y")&" ans, "&DATEDIF(A1;B1;"ym")&" mois et "&DATEDIF(A1;B1;"md")&" jours"
La formule peut être complétée pour inclure le calcul de semaine et B1 remplacé par AUJOURDHUI() pour avoir un calcul actualisé au jour le jour sur le jour courant--
A+
Mike-31
Une période d'échec est un moment rêvé pour semer les graines du savoir.-
-
Bonjour,
Il est possible de contourner la difficulté pour les dates antérieurs à 1900, si tu suis toujours la discussion, fait un petit tour sur ce lien
https://forums.commentcamarche.net/forum/affich-26120633-calcul-de-l-age -
-
-
Cette formule donne dans certains cas des résultats erronés. Par exemple, si la date de naissance est le 30/08/1934 et la date du jour 15/01/2016, le résultat donné est : 81 ans 4 mois et 129 jours !!! 129 jours, c'est plus qu'un mois !
Pour avoir un âge en année(s) et en mois, je propose la formule suivante :
=SI(A1<>"";CONCATENER(TEXTE(ENT((AUJOURDHUI()-A1)/365.25);"0");" ans et ";TEXTE(ENT((((AUJOURDHUI()-A1)/365.25)-ENT(((AUJOURDHUI()-A1)/365.25)))*365.25/30.4375);"0");" mois");"")
A1 est la cellule dans laquelle la date de naissance est notée au format date (par exemple jj/mm/aaa)
La précision n'est pas au jour près, mais elle est largement suffisante dans la majorité des cas.
-
-
Bonjour,
La méthode indiquée par Arjormax est bonne, mais conduit à une légère erreur, à cause des années bisextiles.
Il faut diviser par 365,25 et non 365.
Sinon la personne aura 30 ans 7 jours trop tôt !
Avec 365,25 il pourra encore y avoir une erreur, mais elle sera au maximum de 1 jour.
Bye.-
-
-
Bonjour,
je viens de voir ta question, j'avais rencontré le même souci, car chaque formule trouvée indiquait une légère erreur à un moment donné.
Voici la formule que j'utilise et qui ne commet aucune erreur jusqu'à présent.
Prenons l'exemple d'une colonne appelée "date de naissance" et une autre appelée "date du jour", voici la formule :
=DATEDIF(date de naissance;date du jour;"y")
Bon courage -
-
Bonsoir Aurore,
Je n'arrive à l'âge en années et en mois qu'en passant par trois cellules de calculs.
En A1 nous avons la date de naissance, en B1 nous avons la date du jour, en C1 nous allons calculer l'âge en années, en D1 nous allons calculer le nombre de mois s'ajoutant aux années et en E1 nous allons résumer l'âge en années et en mois.
Formule en C1 =DATEDIF(A1;B1;"y")
Formule en D1 =DATEDIF(A1;B1;"ym")
Formule en E1 =C1+(D1/10)
Je n'ai pas trouvé plus simple, désolée.
-
-
=ENT((AUJOURDHUI()-A1)/365,25)& " ans "&MOIS(AUJOURDHUI()-A1)-1&" mois "&JOUR(AUJOURDHUI()-A1)&"jours"
-
Vous n’avez pas trouvé la réponse que vous recherchez ?
Posez votre question -
Une formule qui marche quelle que soit la version d'excel et qui est 100% conforme au calcul qu'on fait de tête (même pour une date de naissance = 29/02 !!!) :
=ANNEE(AUJOURDHUI())-ANNEE(A1)-SI(100*MOIS(AUJOURDHUI())+JOUR(AUJOURDHUI())>=100*MOIS(A1)+JOUR(A1);0;1)
avec A1 pour la date de naissance -
quand on ne dispose pas de la fonction DATEDIF :
on met en A1 la date de naissance
on met dans A2 =maintenant()
on calcule l'âge (en année et mois) par la formule :
=ENT((A2-A1)/365,25)& " ans "&MOIS(A2-A1)&" mois"
et si on veut ne pas mettre "an" au pluriel lorsuqe l'âge est inférieur à 2 ans :
=ENT((A2-A1)/365,25)&SI((A2-A1)/365,25<2;" an ";" ans ")&MOIS(+A2-A1)&" mois" -
Bonjour, je souhaiterais faire la même chose dasn excel 2007 mais ca ne marche pas.
Ca me marque #VALEUR!
J'ai déja essayé plusieur formule mais rien n'y fait.
La date de naissance se trouve en D7 et je veux me servire de la date d'aujourd'hui (=aujourdhui())
Merci d'avance -
Bonjour, suite à la formule donnée par BenoitC qui je vous le rappelle est
=ENT((A2-A1)/365,25)& " ans "&MOIS(A2-A1)&" mois"
Cette formule est superbe mais j'ai remarqué que l'écriture de la date d'aujourdh'ui dans une cellule était supprimable en modifiant légèrement la formule.
La Voici:
En considérant que dans la cellule A1, il y a la date de naissance,
on peut écrire:
=ENT((AUJOURDHUI()-A1)/365,25)& " ans "&MOIS(AUJOURDHUI()-A1)&" mois"
Et la date reste la même sauf que l 'économie de cellule et de temps est flagrante. -
Bonjour, j'interviens un peu tard dans la discutions...
merci pour cette formule qui m'a bien aisé aussi...
d'autre part, lorsque qu'aucune date de naissance n'est mentionnée j'obtient un chiffre : ''108'' qui en fait ''aujourd'hui/365''...
ma question : comment faire pour que le résultat (en l'occurence 108) n'apparaisse pas si il n'y a rien dans la case de la date de naissance?
merci d'avance -
=ANNEE(aujourdhui())- ANNEE(date de naissance)
date de naissance c'est la cellule là ou vous avez tapez la date de naissance exp L1C1 -
Bonjour à tous,
La formule suivante marche aussi très précise pour calculer l'âge d'une personne à une date définie :
A1 : Date de naissance
A2 : =aujourdhui()
=arrondi.inf(jours360(A1;A2)/360;0)
A+-
Bonjour ecniv,
par le message posté par Aurore, je me suis mise à relire toutes les propositions que nous avions faites l'année dernière.
Ta fonction reste de très loin la plus simple tout en restant précise.
J'ai voulu la compléter pour obtenir en résultat final un âge écrit en "années, mois et jours", tout en incluant les conditions suivantes : si <2 ans, alors écrire "an" et si <2 jours alors écrire "jour" mais je n'y parviens pas du tout, je "patauge"...
Saurais-tu y parvenir ?
Merci d'avance.
Bye-
-
-
Voici la formule pour excel 2007+
C'est une formule exacte, sans divisions.
=ANNEE(AUJOURDHUI())-ANNEE([@[Date de naissance]]) -
SI(MOIS(AUJOURDHUI())>MOIS([@[Date de naissance]]);1;
SI(JOUR(AUJOURDHUI())>JOUR([@[Date de naissance]]);1;0)) -
-
ANNEE(AUJOURDHUI()-ANNEE(B4)
OU B4 est la cellule contenant la date de naissance sous format date
a+
f1edx -
en A1 ecrire la date de naissance et copier cette formule en A2
=ENT((AUJOURDHUI()-A1)/365,25)& " ans "&MOIS(AUJOURDHUI()-A1)&" mois" -
Pour aller jusqu'au bout de la logique
Années, mois, semaines et jours
=ENT((AUJOURDHUI()-A1)/365,25)& " ans "&MOIS(AUJOURDHUI()-A1)-1&" mois "&ENT(JOUR(AUJOURDHUI()-A1)/7)&" semaines et "&MOD(JOUR(AUJOURDHUI()-A1);7)&" jours" -
écrire un algorithme qui permet de calculer l'age d'une personne à travers sa date de naissance
-
Bonjour,
ton résultat est normal parce que pour calculer le nombre d'année, divise la différence par 365,25 qui est en fait une moyenne de quatre ans donc avec une année bissextile 365+365+365+365+366/4
pour avoir un calcul plus précis il faut utiliser ce genre de formule
=DATEDIF(A1;AUJOURDHUI();"y")&" ans, "&DATEDIF(A1;AUJOURDHUI();"ym")&" mois et "&DATEDIF(A1;AUJOURDHUI();"md")&" jours"
comme cela tu pourrais jouer avec la prise en compte du pluriel des années et jours en complétant ta formule comme cela
=SI(AUJOURDHUI()-A1;TEXTE(DATEDIF(A1;AUJOURDHUI();"y");"[>1]0"" ans "";[>]""1 an "";"))&TEXTE(DATEDIF(A1;AUJOURDHUI();"ym");"[>]0"" mois "";")&SI(DATEDIF(A1;AUJOURDHUI();"md")=0;"";SI(AUJOURDHUI()-A1;TEXTE(TRONQUE(DATEDIF(A1;AUJOURDHUI();"md"));"[>1]0"" jours "";[>]""1 jour "";")))&SI(HEURE(AUJOURDHUI())-HEURE(A1)=0;"";SI(AUJOURDHUI()-A1;TEXTE(HEURE(AUJOURDHUI())-HEURE(A1);"[>1]0"" heures "";[>]""1 heure "";")))&SI(MINUTE(AUJOURDHUI())-MINUTE(A1)=0;"";SI(AUJOURDHUI()-A1;TEXTE(MINUTE(AUJOURDHUI())-MINUTE(A1);"[>1]0"" minutes "";[>]""1 minute "";")))
-
A+
Mike-31
Une période d'échec est un moment rêvé pour semer les graines du savoir. -
Je viens d'essayer ta formule et ca a marché "Ate " sur Open office.org Writer ( feuille de calcul)
Dans mon cas c'était pour calculer l'age de ma yorkshire a une date précise a partir de sa date de naissance
donc dans la cellule A1 , vous mettez la date de naissance : dans mon cas 13/09/2012
Dans la cellule A2 ,
vous mettez la date ou vous voulez savoir l'age ce jour la : dans mon cas 19/01/2013
Vous mettez la formule dans la cellule B1 :
=ENT((AUJOURDHUI()-A1)/365,25)& " ans "&MOIS(AUJOURDHUI()-A1)&" mois"
appuyer sur "entrée" et ca m'a affichée " 1 an et 3 mois "
ps : a mon avis il arrondit en " inferieur " car sur le site ou je voulais inscrire ma York a une expo , e ils m'ont dis 1 an et 4 mois , enfin c'est pas très grave , peut etre d'ailleurs que c'est l'autre site qui arrondis " supérieurement ?! '" XD
voila la technique , encore merci "Ate"