Il existe au moins quatre façons de calculer un âge dans Excel à partir d’une date de naissance. Problème : elles ne donnent pas toutes le même résultat, et certaines ont des limites que peu de gens connaissent. Dans cet article, tu découvres chacune d’elles, avec leurs forces et leurs contraintes, pour choisir celle qui convient à ta situation.
- Calculer un âge en années entières avec DATEDIF
- Utiliser ANNEE.FRACTION comme alternative
- Écrire la formule longue sans DATEDIF si besoin
- Afficher un âge détaillé : années, mois et jours
- Mettre à jour l’âge automatiquement chaque jour
Méthode 1 : DATEDIF (la plus fiable)
La fonction DATEDIF est conçue exactement pour ça : calculer un écart entre deux dates selon une unité choisie. Pour un âge en années entières, la formule est la suivante :
=DATEDIF(date_naissance; AUJOURDHUI(); "y")Si la date de naissance est en A2, tu écriras :
=DATEDIF(A2; AUJOURDHUI(); "y")L’argument « y » signifie years : DATEDIF renvoie le nombre d’années complètes entre les deux dates, ce qui correspond exactement à un âge. Une personne née le 15 novembre 1990 qui n’a pas encore eu son anniversaire cette année sera comptée avec un an de moins, comme dans la réalité.
Méthode 2 : ANNEE.FRACTION
ANNEE.FRACTION calcule la fraction d’année représentée par l’intervalle entre deux dates. Seule, elle renvoie un nombre décimal comme 34,7. Pour obtenir un âge en années entières, tu l’encadres avec ENT() qui supprime la partie décimale :
=ENT(ANNEE.FRACTION(date_naissance; AUJOURDHUI()))Exemple en A2 :
=ENT(ANNEE.FRACTION(A2; AUJOURDHUI()))Cette méthode est utile quand tu travailles dans un environnement où DATEDIF est bloquée ou non disponible. Elle est parfaitement prise en charge par Excel et Google Sheets. En revanche, elle peut donner un résultat légèrement différent de DATEDIF sur certaines dates limites, selon la méthode de base utilisée par ANNEE.FRACTION (par défaut : réel/réel).
Méthode 3 : calcul manuel avec ANNEE, MOIS et JOUR
Si tu veux éviter DATEDIF et ne pas utiliser ANNEE.FRACTION, tu peux écrire la logique toi-même. Le principe : on soustrait l’année de naissance à l’année actuelle, puis on corrige si l’anniversaire n’est pas encore passé.
=ANNEE(AUJOURDHUI())-ANNEE(A2)
-SI(MOIS(AUJOURDHUI())Cette formule :
- Calcule d'abord la différence brute entre les années (ex : 2026 moins 1990 = 36).
- Soustrait 1 si on est avant le mois d'anniversaire.
- Soustrait aussi 1 si on est dans le bon mois mais avant le jour exact de l'anniversaire.
C'est la formule la plus transparente à comprendre, mais aussi la plus longue à écrire. Elle est recommandée quand tu dois documenter ta logique ou travailler sur un fichier partagé avec des utilisateurs qui ne connaissent pas DATEDIF.
Méthode 4 : âge précis avec années, mois et jours
Parfois, dire "32 ans" ne suffit pas. En RH par exemple, on peut avoir besoin de savoir qu'un contrat a duré "2 ans, 3 mois et 17 jours". DATEDIF permet ça en combinant trois arguments différents :
- "y" : nombre d'années complètes
- "ym" : nombre de mois restants après les années entières
- "md" : nombre de jours restants après les mois entiers
La formule assemblée en texte :
=DATEDIF(A2;AUJOURDHUI();"y")&" ans, "
&DATEDIF(A2;AUJOURDHUI();"ym")&" mois et "
&DATEDIF(A2;AUJOURDHUI();"md")&" jours"Résultat affiché dans la cellule : 32 ans, 4 mois et 13 jours. Attention, cette formule retourne du texte, pas un nombre. Tu ne pourras donc pas faire de calculs dessus directement. Si tu as besoin de trier ou filtrer par âge, garde une colonne séparée avec la formule en années entières.
Cas pratique : suivi RH et gestion des anniversaires
Le calcul d'âge dans Excel est particulièrement utile dans deux contextes courants.
Calcul d'ancienneté
En remplaçant la date de naissance par une date d'embauche, tu obtiens exactement la même logique. Utilise DATEDIF avec la date d'entrée en entreprise et AUJOURDHUI() pour connaître le nombre d'années d'ancienneté de chaque collaborateur.
=DATEDIF(date_embauche; AUJOURDHUI(); "y")Gestion des dates d'anniversaire
Tu peux aussi identifier les personnes dont l'anniversaire tombe dans les 30 prochains jours. La logique : comparer le numéro de jour dans l'année de la date d'anniversaire (ramenée à l'année en cours) avec le numéro du jour d'aujourd'hui.
Une approche simple :
=DATE(ANNEE(AUJOURDHUI()); MOIS(A2); JOUR(A2))-AUJOURDHUI()Si le résultat est compris entre 0 et 30, l'anniversaire approche. Tu peux ensuite utiliser une mise en forme conditionnelle pour mettre la ligne en évidence automatiquement.
Mettre à jour l'âge automatiquement
La clé d'un calcul d'âge dynamique, c'est la fonction AUJOURDHUI(). Elle renvoie la date du jour à chaque recalcul du fichier, donc l'âge se met à jour automatiquement chaque fois que tu ouvres le fichier.
- Ne saisis jamais la date du jour en dur dans ta formule (par exemple 18/05/2026). Si tu le fais, l'âge sera figé à jamais.
- Toujours utiliser AUJOURDHUI() comme deuxième argument de DATEDIF ou d'ANNEE.FRACTION.
- Si le fichier est partagé et que l'âge ne se met pas à jour, vérifie que le recalcul automatique est activé (Formules > Options de calcul > Automatique).
Tu trouveras tous les détails sur le fonctionnement des dates dans Excel dans notre guide complet sur les dates Excel.

