Calculer une durée ou un âge avec la fonction DATEDIF
Il existe une fonction cachée dans Excel qui permet de calculer une durée entre deux dates, notamment l’âge d’une personne : c’est la fonction DATEDIF.
Peu connue car elle n’apparaît pas dans les suggestions automatiques d’Excel, elle reste pourtant très simple à utiliser et précise.
Cas d’usage concrets :
- Calculer l’âge ou l’ancienneté d’un salarié
- Calculer la durée d’un contrat ou d’une mission
- Calculer le nombre de mois restant d’un projet
- Mesurer le temps écoulé entre deux événements (factures, commandes, livraisons...)
- Calculer le temps restant avant une échéance, en années, mois et jours...
DATEDIF
DATEDIF est une fonction cachée dans Excel.
La syntaxe de DATEDIF n'est pas renseignée et la fonction n'apparaît pas dans la liste.

Il faut donc connaitre la syntaxe.
Syntaxe :
=DATEDIF(date_début; date_fin; unité de temps)
Nous avons 3 arguments à renseigner :
- La date de début
- La date de fin
- L'unité de temps
Détail des arguments :
- date_début
C’est la date de départ.
Par exemple, la date de naissance d’une personne.
- date_fin
C’est la date de fin ou d'échéance..
Le plus souvent, on utilise la fonction AUJOURDHUI() pour obtenir la date du jour.
- Unité de temps
C’est le type de résultat que vous souhaitez obtenir :
- "Y" → pour le nombre d’années complètes
- "M" → pour le nombre de mois complets
- "D" → pour le nombre de jours
- "YM" → pour les mois restants après les années complètes
- "YD" → pour les jours restants après les années complètes
- "MD" → pour les jours restants après les mois complets
Notes concernant les unités de temps :
– Les guillemets sont obligatoires car il s’agit de texte.
– Les unités sont en anglais :
Y : Year (année),
M : Month (mois),
D : Day (jour).
– Vous pouvez mettre les unités en minuscules.
Exemple 1 : Différence entre deux dates en mois
Nous allons calculer la durée en mois entre 2 dates.
Date de début : C2
Date de fin prévue : C3
Durée en mois : C4

On insère la formule en C4 :
=DATEDIF(C2;C3;"M")
D'abord la date de départ, puis la date de fin et l'unité de temps.

Résultat :

Exemple 2 : Différences entre deux dates en années, mois, jours
Nous allons ajouter le nombre d'années complètes :
![]()
Résultat : 1 année complète

Nous allons ajouter le nombre de mois entiers restant après l'année complète.
![]()
Résultat :
Nous avons 7 mois complets en plus de l'année , ce qui correspond bien au total de 19 mois trouvés précédemment.

On ajoute le nombre de jours restants après le nombre de mois complets :
![]()
Résultat :

Il reste donc 1 an, 7 mois et 15 jours avant l'échéance.
On peut aussi ajouter le nombre de jours total entre les 2 dates :
![]()
Résultat :

Note pour le nombre de jours
Vous pouvez utiliser DATEDIF pour calculer le nombre de jours entre 2 dates mais il est plus simple d'utiliser la fonction JOURS qui est prévue à cet effet.
(Voir l'article sur la fonction JOURS )
Dans cet exemple, la durée est fixe.
Si on veut calculer les durées restantes en années, mois et jours restants avant la fin, on utilisera la fonction AUJOURDHUI() comme date de début.
Dans ce cas les formules sont :
Années restantes : DATEDIF(AUJOURDHUI();C3;"Y")
Mois restants : DATEDIF(AUJOURDHUI();C3;"YM")
Jours restants : DATEDIF(AUJOURDHUI();C3;"MD")
Exemple 3 : Calculer des âges
La fonction DATEDIF est particulièrement utile en RH pour calculer des âges ou des anciennetés en la combinant avec la fonction AUJOURDHUI.
Voici un extrait d'un tableau avec les prénoms et dates de naissance des salariés d'une entreprise fictive.
Nous allons calculer l'âge des salariés dans la colonne Âges avec la fonction DATEDIF et la fonction AUJOURDHUI.
(Voir l'article sur la fonction AUJOURDHUI)

Formule :
On insère la fonction DATEDIF dans la 1ʳᵉ cellule vide de la colonne Ages (en F2)

![]()
=DATEDIF(E2;AUJOURDHUI();"Y")
Date de début : La date de naissance : E2
Date de fin : La date du jour : AUJOURDHUI()
Unité : années : "Y"
On valide et on incrémente la fonction si besoin sur l'ensemble de la colonne.
Si vos cellules sont sous forme de tableau, la formule est recopiée automatiquement sur l'ensemble de la colonne.

Résultat :

Notes :
Grâce à la fonction AUJOURDHUI(), le calcul de l’âge sera mis à jour et changera automatiquement à sa date d’anniversaire.
Ne pas oublier les guillemets autour du "Y"
DATEDIF est une fonction cachée, vous remarquerez qu'il n'y a pas la syntaxe qui apparaît quand vous entrez la fonction.

Astuce : Pour afficher le texte "ans" dans la cellule, vous devez créer un format de cellule personnalisé ou bien ajouter & " ans" dans votre formule.
Format personnalisé :
Dans l'onglet Accueil , ou clic droit Format de cellules
Dans Type, Ajoutez "ans" après Général.


Avec le symbole & :
Ajoutez & " ans" dans la formule comme ceci :
![]()
Mettez bien " ans" entre guillemets et un espace après le 1er guillemet pour ne pas que le texte soit collé à l'âge.
Résultat :

En anglais :
La fonction est déjà écrite en anglais : DATEDIF signifie Date Difference.
Voilà, cet article sur la fonction DATEDIF est terminé.
Vous pouvez le commenter et vous abonner au blog si ce n'est pas encore fait, pour recevoir du contenu exclusif réservé aux membres et progresser sur Excel.
Si cela vous a plu, vous pouvez le commenter et vous abonner au blog si ce n’est pas encore fait, pour recevoir du contenu exclusif réservé aux membres et progresser sur Excel.
Il vous suffit de renseigner votre prénom et votre adresse mail dans le formulaire ci-dessous ou dans la pop-up qui s’affiche parfois.
Vous pouvez aussi rejoindre la formation complète sur les fonctions de texte, une formation pour aller plus loin sur les fonctions de texte.
À bientôt sur le blog Maîtrisez Excel.
Steeve

