On a tous rencontré ce fichier RH ou ce tableau de suivi client où l’âge est saisi à la main, en dur, dans une colonne. Le problème apparaît six mois plus tard : les chiffres sont faux, personne ne les met à jour, et le reporting perd toute fiabilité. Une seule formule calcul âge Excel bien construite règle ce problème de façon définitive, sans macro, sans code, sans intervention manuelle.
DATEDIF : la formule calcul âge Excel que Microsoft ne documente pas
Quand on cherche à calculer un âge dans Excel, on tombe vite sur la fonction DATEDIF. Elle fonctionne, elle est fiable, mais elle a une particularité que les concurrents mentionnent rarement : Microsoft ne la référence pas dans l’aide officielle d’Excel. On ne la trouve pas dans la liste déroulante des fonctions, et l’autocomplétion ne la propose pas.
A lire en complément : Passer de Google Drive à OneDrive : les étapes à suivre pour la migration
Concrètement, la syntaxe est la suivante :
=DATEDIF(A2;AUJOURDHUI(); »Y »)
A lire également : Excel : Comment l'intégrer efficacement dans un SI d'entreprise ?
A2 contient la date de naissance, AUJOURDHUI() renvoie la date du jour, et « Y » demande le résultat en années complètes. Le résultat est un entier : 34, 52, 27. Pas de décimales, pas de formatage à corriger.
Le paramètre « Y » n’est pas le seul disponible. On peut aussi utiliser « M » pour obtenir le nombre total de mois écoulés, ou « YM » pour afficher uniquement les mois restants après le décompte des années. Pour un suivi précis (ancienneté au jour près, par exemple), la combinaison de plusieurs DATEDIF dans une même cellule permet d’afficher un résultat du type « 3 ans, 7 mois et 12 jours ».

Le fait que DATEDIF ne soit pas documentée ne signifie pas qu’elle va disparaître. Elle existe depuis les premières versions d’Excel, héritée de Lotus 1-2-3. En revanche, l’absence de documentation officielle explique pourquoi beaucoup d’utilisateurs passent à côté et bricolent des formules moins robustes.
Pourquoi diviser par 365,25 produit des erreurs dans un calcul âge Excel
L’alternative la plus répandue à DATEDIF consiste à écrire =(AUJOURDHUI()-A2)/365,25 et à envelopper le tout dans ENT() pour obtenir un entier. On la retrouve dans la majorité des tutoriels. Elle a un défaut que peu de fichiers détectent : elle peut décaler l’âge d’un jour autour de la date d’anniversaire.
Le chiffre 365,25 est une moyenne statistique qui compense les années bissextiles sur le long terme. Sur un cas individuel, il arrive que le résultat bascule un jour trop tôt ou un jour trop tard. Pour un suivi global (tranches d’âge dans un tableau de bord, par exemple), l’écart est négligeable. Pour un calcul d’ancienneté précis lié à une prime ou un droit, il ne l’est pas.
Voici comment distinguer les deux approches :
- La division par 365,25 convient pour un affichage indicatif, une colonne d’âge approximatif dans un fichier de prospection ou une liste d’anniversaires.
- DATEDIF avec le paramètre « Y » renvoie un résultat calé sur le calendrier réel. L’âge change exactement le jour de l’anniversaire, pas la veille ni le lendemain.
- Pour un besoin en années, mois et jours combinés, seule la combinaison de plusieurs DATEDIF garantit un résultat fiable sans approximation.
Dans un contexte RH, où l’âge peut conditionner un avantage conventionnel ou un seuil réglementaire, DATEDIF reste la seule formule qui ne triche pas avec le calendrier.
Dépasser la cellule : calcul d’âge dans Power Query pour les fichiers volumineux
Quand on travaille sur un fichier de quelques dizaines de lignes, une formule DATEDIF dans une colonne suffit. Mais sur un fichier RH de plusieurs milliers de salariés, ou un CRM avec des dizaines de milliers de contacts, la question du calcul d’âge change de nature. La formule fonctionne toujours, mais la mise à jour quotidienne, le croisement avec d’autres données et la construction de tranches d’âge deviennent plus simples dans Power Query.
Power Query permet de créer une colonne calculée qui dérive l’âge à partir de la date de naissance et de la date du jour, via une expression du type Duration.TotalDays(DateTime.LocalNow() – [DateNaissance]) / 365.25. L’avantage principal : cette colonne se recalcule à chaque actualisation de la requête, sans toucher au fichier source.
Les retours varient sur ce point, mais dans les usages récents de reporting RH et de tableaux de bord, le calcul d’âge est de plus en plus déporté vers Power Query ou Power BI plutôt que géré cellule par cellule. Cette approche permet aussi de construire des colonnes de tranches d’âge (18-25, 26-35, etc.) directement dans la requête, sans formule SI imbriquée dans le tableur.

Pour un utilisateur qui débute, ce n’est pas la première étape. On commence par maîtriser DATEDIF dans une cellule, puis on bascule vers Power Query quand le volume ou la complexité du reporting le justifie.
Âge dans un fichier RH : le piège RGPD que la formule ne résout pas
Calculer l’âge de collaborateurs ou de clients est une opération technique simple. La question qui se pose en amont est juridique : a-t-on le droit de stocker et d’exploiter cette donnée dans ce contexte précis ?
Les autorités de protection des données, dont la CNIL en France, rappellent que la collecte de l’âge dans les fichiers RH et CRM doit respecter le principe de minimisation des données. On ne conserve que les informations nécessaires à une finalité identifiée. Stocker la date de naissance pour calculer un âge dans un tableau de bord de suivi des effectifs est légitime. Filtrer des candidatures par tranche d’âge dans un processus de recrutement automatisé pose un problème de non-discrimination.
En pratique, cela signifie que la formule Excel est le dernier maillon de la chaîne. Avant de l’écrire, on vérifie :
- La finalité du traitement (suivi RH, obligation conventionnelle, reporting statistique).
- La base légale qui justifie la conservation de la date de naissance dans le fichier.
- L’absence de filtres automatiques qui utiliseraient l’âge comme critère d’exclusion dans un processus de décision.
Ce cadrage n’a rien de théorique. Un fichier Excel partagé en interne avec une colonne « âge » visible de tous, sans restriction d’accès, peut poser un problème lors d’un contrôle.
La formule DATEDIF transforme une date de naissance en âge exploitable en une seule cellule, sans approximation. C’est le point de départ. Savoir quand et pourquoi l’utiliser distingue un tableur bien construit d’un fichier qui accumule des données sans cadre.


