La fonction DATEDIF est une fonction qui vous permet de calculer la différence entre deux dates dans Excel.
Vous pouvez avoir besoin de connaître l’écart entre deux dates dans Excel dans différents cas; par exemple pour calculer l’âge entre deux dates, ou encore combien reste exactement en terme de mois et jours avant qu’un produit n’expire, etc.
1- Syntaxe et fonctionnement de la fonction DATEDIF
La syntaxe de la fonction DATEDIF d’Excel est comme suit:
=DATEDIF(Date_de_début; Date_de_fin; Unité)
L’argument Unité dans la formule de la fonction Datedif correspond à la façon avec laquelle vous voulez présenter la différence entre deux dates: en terme d’années, de mois, de jours, ou en les combinant.
L’argument Unité peut être soit:
– “Y”: pour calculer la différence entre deux dates en années (Y pour “Year” en Anglais).
– “M”: pour calculer la différence entre deux dates en mois (M correspond au mot “mois”, mais à l’origine, c’est plutôt pour “Month” en Anglais).
– “D”: pour calculer la différence entre deux dates en jours (D pour “Day” en Anglais).
– “YM”: pour calculer la différence entre deux dates juste en mois; les années et les jours ne sont pas pris en compte.
– “MD”: pour calculer la différence entre deux dates juste en jours; les années et les mois ne sont pas pris en compte.
– “YD”: pour calculer la différence entre deux dates juste en jours en prenant compte des mois; les années ne sont pas pris en compte.
Tout ça peut être à priori rebutant, surtout les 3 dernières unités; mais n’ayez aucune crainte, on va détailler tout ça dans les exemples ci-après.
Note: Comme vous l’avez sans doute constaté, les labels utilisés par l’argument Unité sont exprimés en Anglais. Une des raisons à cela est peut être que la fonction DATEDIF n’est pas une fonction officiellement documentée; d’ailleurs, vous ne la trouverez pas dans la liste des fonctions dans Excel!
PS: Pour plus d’informations sur l’utilisation des fonctions dans Excel, voir le tutoriel Excel: Fonctions de Calcul.
Mises en garde importantes!
Maintenant, avant de passer aux exemples, j’aimerais émettre deux “petites” mises en garde à propos de la fonction DATEDIF:
* 1ère mise en garde *
Pour que la fonction DATEDIF fonctionne correctement:
– Les deux dates doivent être postérieures ou égales à la date du 01/01/1900,
– Et la date de début doit être antérieure à la date de fin.
* 2ème mise en garde *
La fonction DATEDIF calcule la différence entre deux dates dans Excel, c’est à dire l’écart entre deux dates et non la durée globale; autrement dit, le résultat de l’application de la fonction DATEDIF sur deux dates n’inclut qu’une seule date et non les deux en même temps.
Exemple:
– Pour les deux dates 01/01/2020 et 31/01/2020: la fonction DATEDIF donne comme résultat 0 mois (en cas de calcul par mois), ou 30 jours (en cas de calcul par jours).
– Pour les deux dates 01/01/2020 et 01/02/2020: la fonction DATEDIF donne dans ce cas le résultat 1 mois (en cas de calcul par mois), ou 31 jours (en cas de calcul par jours).
Donc, en clair, prenez en considération ce détail lorsque vous calculez l’écart entre deux dates avec la fonction DATEDIF.
Passons maintenant aux exemples concrets:
Admettons qu’on veuille calculer l’âge du personnel d’une entreprise ou administration, par exemple pour savoir le nombre d’années leur restant avant la retraite.
On prend ici l’exemple du calcul d’âge en Excel, mais le principe reste le même pour tous les autres cas où on a besoin de calculer la différence entre deux dates avec la fonction DATEDIF.
2- Calcul d’âge sur Excel en utilisant la fonction DATEDIF
Dans cet exemple, on va calculer l’âge du personnel d’une entreprise ou administration, pour par exemple savoir le nombre d’années restant à chacun avant la retraite.
On va calculer la différence entre la date de naissance et la date du jour avec l’aide de la fonction DATEDIF d’Excel.
On va aussi faire appel à la fonction AUJOURDHUI d’Excel qui nous donne la date du jour automatiquement (à partir de la date système); mais ceci est optionnel, du moment qu’on pourrait aussi taper à la main notre date du jour, ce qui n’est pas en fait sans grande utilité dans le cas où la date qu’on veut prendre en considération pour le calcul d’âge n’est pas la date du jour, mais une date ultérieure, ou même antérieure.
Pour vous donner le maximum d’exemples d’utilisation de la fonction DATEDIF pour le calcul d’âge, on va calculer la différence entre les deux dates en années, puis en mois, et ensuite en jours; on va aussi pour finir, combiner les options de l’argument Unité de la fonction DATEDIF pour calculer la différence entre les deux dates avec détail; c’est à dire, à la fois, en années, mois, et jours.
Note: Dans tous les exemples suivants, on va mettre la date du jour dans une colonne distincte, pour simuler les autres cas de calcul de l’écart entre deux dates dans Excel, où vous aurez besoin de deux colonnes contenant les deux dates.
Mais, pour le calcul d’âge en fait, vous pourriez juste mettre la date du jour dans une cellule à part, hors de votre plage de données, ou encore inclure directement la fonction AUJOURDHUI() dans votre formule.
Pour cela voir le point (e) à la fin de ce tutoriel.
a- Calcul d’âge en années avec la fonction DATEDIF (En années seulement!)
La syntaxe à utiliser dans la formule de la fonction DATEDIF pour calculer l’âge en années, est comme suit:
=DATEDIF(Date_de_naissance; Date_du_jour; "Y")
Dans notre exemple illustré ci-dessous, on utilise la fonction AUJOURDHUI pour obtenir la date du jour dans la cellule C2.

Et ensuite, dans un deuxième temps, on calcule l’âge dans la cellule D2 en y saisissant la formule:
=DATEDIF(B2; C2; "Y")

Le résultat de la différence entre les deux dates 07/04/1965 et 06/01/2020 est 54 ans.
En réalité, c’est un tout petit peu plus, mais on est en train de calculer la différence entre deux dates en années avec la fonction DATEDIF qui ne renvoie qu’un nombre entier comme résultat.
b- Calcul d’âge en mois avec la fonction DATEDIF (En mois seulement!)
La syntaxe à utiliser dans la formule de la fonction DATEDIF pour calculer l’âge en mois, est comme suit:
=DATEDIF(Date_de_naissance; Date_du_jour; "M")
Dans le même exemple utilisé ci-avant, on calcule l’âge dans la cellule E2 en y saisissant la formule suivante:
=DATEDIF(B2; C2; "M")

c- Calcul d’âge en jours avec la fonction DATEDIF (En jours seulement!)
La syntaxe à utiliser dans la formule de la fonction DATEDIF pour calculer l’âge en jours, est comme suit:
=DATEDIF(Date_de_naissance; Date_du_jour; "D")
Toujours, en utilisant le même exemple, on calcule l’âge en jours dans la cellule F2 en y saisissant la formule suivante:
=DATEDIF(B2; C2; "D")

Remarque: Vous pouvez aussi calculer la différence en jours entre deux dates en Excel, en leur appliquant une simple soustraction.
Pour le présent exemple, on peut juste saisir dans la cellule F2 la formule suivante:
=C2-B2
d- Calcul d’âge détaillé avec la fonction DATEDIF: Age complet en années, mois, et jours
C’est, je présume, le cas le plus fréquent et c’est là où vous allez avoir besoin des autres paramètres YM et MD de l’argument Unité de la fonction DATEDIF.
La syntaxe à utiliser dans la formule de la fonction DATEDIF pour calculer l’âge en détail (c’est à dire, en années, mois, et jours), est comme suit:
=DATEDIF(Date_de_naissance; Date_du_jour; "y") & " ans, " & DATEDIF(Date_de_naissance; Date_du_jour; "ym") & " mois et " & DATEDIF(Date_de_naissance; Date_du_jour; "md") & " jours"
Comme vous le constatez, on a utilisé les trois paramètres de l’argument unité (Y, YM et MD), chacun dans une fonction DATEDIF, et on a concaténé le tout avec l’opérateur &.
L’argument “YM” est utilisé pour obtenir le nombre de mois sans prendre en compte les années, et l’argument “MD” est utilisé pour obtenir le nombre de jours sans compter les années ou les mois.
Les parties “ans”, “mois et”, et “jours”, quant à elles, sont là pour clarifier le résultat, sinon on aurait eu comme résultat juste une séquence de chiffres, sans aucune signification. C’est du texte, donc vous pouvez remplacer ce qui est entre les guillemets doubles par ce que vous voulez.
Appliquant tout celà à notre exemple utilisé tout au long de ce tutoriel, on se retrouve avec la formule suivante qu’on a placé dans la cellule G2:
=DATEDIF(B2; C2; "y") & " ans, " & DATEDIF(B2; C2; "ym") & " mois et " & DATEDIF(B2; C2; "md") & " jours"

e- En pratique: Date du jour dans une cellule à part ou incluse dans la formule
Pour les fins de ce tutoriel, on a mis la date du jour dans une colonne à côté de notre date de naissance; mais en pratique, il serait mieux de la mettre seule dans une cellule hors de la plage de données (pour ne pas avoir toute une colonne pour rien), ou encore inclure directement la fonction AUJOURDHUI() dans notre formule.
Ce que nous allons voir tout de suite.
- Date du jour dans une seule cellule à part:
Dans l’exemple illustré ci-dessous, on met la date du jour dans une cellule distincte de notre plage de cellules, afin réduire le nombre de colonnes utilisé et pour avoir la possibilité de la modifier facilement à notre gré; par exemple, pour utiliser non la date du jour, mais la date qu’on veut; une date ultérieure ou même antérieure à la date du jour.
Mais dans ce cas, vous devez utiliser dans votre formule les références absolues pour la cellule contenant la date du jour, afin de ne pas avoir d’erreur lorsque vous copierez la formule le long de la colonne d’âges. Dans notre cas, c’est $F$2.
Voici notre formule:
=DATEDIF(B2; $F$2; "y") & " ans, " & DATEDIF(B2; $F$2; "ym") & " mois et " & DATEDIF(B2; $F$2; "md") & " jour(s)"

Comme déjà dit, la deuxième date utilisée pour le calcul d’âge peut être la date du jour obtenue avec la formule =AUJOURDHUI(), ou bien n’importe quelle date que vous saisirez manuellement.
- Date du jour incluse dans la formule de la fonction DATEDIF
Dans ce cas, on utilise la fonction AUJOURDHUI() à l’intérieur de la formule de la fonction DATEDIF, comme suit:
=DATEDIF(B2; AUJOURDHUI(); "y") & " ans, " & DATEDIF(B2; AUJOURDHUI(); "ym") & " mois et " & DATEDIF(B2; AUJOURDHUI(); "md") & " jour(s)"

Voilà; c’est la fin de ce tutoriel à propos du calcul de l’écart entre deux dates dans Excel, en utilisant la fonction DATEDIF.
J’espère que tout ça vous ait été utile. J’ai essayé d’être le plus clair possible; mais si jamais vous éprouvez une quelconque difficulté, n’hésitez pas à la noter dans les commentaires.
Autres tutos et astuces intéressants :
Fabrice Lambert est un spécialiste de l’informatique avec plus de 18 ans d’expérience dans le domaine.
Il a une connaissance approfondie des diverses applications Office, que ce soit Word, Excel, ou autres, et a animé, depuis 2005, plusieurs ateliers et formations dans le domaine informatique, notamment sur l’utilisation du système Windows et des applications Office.
Article très intéressant !
Merci, Ibrahim, pour ton commentaire.
Ravi que tu aies trouvé ce tutoriel intéressant.