Date différence Excel sans DATEDIF : alternatives simples à connaître

Calculer la différence entre deux dates dans Excel semble simple, jusqu’au moment où DATEDIF renvoie un résultat bizarre. Microsoft le reconnaît : cette fonction, héritée de Lotus 1-2-3, peut produire des résultats incorrects dans certains scénarios. L’argument « MD » en particulier est connu pour ses incohérences. Bonne nouvelle : Excel propose d’autres formules, plus fiables et plus transparentes, pour obtenir un écart en jours, en mois ou en années.

Pourquoi éviter DATEDIF dans un classeur Excel partagé

DATEDIF n’apparaît pas dans l’autocomplétion d’Excel. Vous ne la trouverez pas dans l’assistant de fonctions. Elle existe, mais Microsoft ne la met plus en avant.

A lire également : Meilleures alternatives à Excel : outils de tableur performants pour votre activité

La raison est documentée sur le support officiel : la fonction est maintenue uniquement pour la compatibilité ascendante avec les anciens fichiers Lotus 1-2-3. Dans un classeur partagé via Excel pour le web ou OneDrive, cette opacité pose un vrai problème de maintenabilité.

Quand un collègue ouvre votre fichier et tombe sur =DATEDIF(A2;B2;"MD"), il n’a aucune aide contextuelle pour comprendre ce que fait la formule. Pire, l’argument « MD » (censé renvoyer les jours restants en ignorant mois et années) donne parfois des valeurs négatives ou incohérentes. Les alternatives basées sur FRACTION.ANNEE ou la soustraction directe sont vérifiables et documentées dans l’aide intégrée d’Excel.

Lire également : Excel ou Access : Quand et pourquoi préférer l'un à l'autre ?

Homme travaillant sur des formules de différence de dates dans Excel sur un ordinateur portable dans un bureau à domicile

Soustraction directe : la différence de dates en jours dans Excel

Vous avez déjà remarqué qu’Excel stocke chaque date sous forme d’un numéro de série ? Le 1er janvier 2024 vaut 45292, le 2 janvier 2024 vaut 45293. La conséquence est directe : pour obtenir le nombre de jours entre deux dates, une simple soustraction suffit.

La formule

Si votre date de début est en A2 et votre date de fin en B2 :

=B2-A2

Le résultat est un nombre entier de jours. Si la cellule affiche une date au lieu d’un nombre, changez le format de cellule en « Nombre » (onglet Accueil, groupe Nombre).

Et les semaines ?

Divisez simplement le résultat par 7 :

=(B2-A2)/7

Pour un nombre entier de semaines complètes, enveloppez dans ENT : =ENT((B2-A2)/7). Cette approche reste lisible par n’importe quel utilisateur, sans connaissance avancée d’Excel.

Fonction FRACTION.ANNEE pour calculer mois et années entre deux dates

Pour un écart en mois ou en années, la soustraction directe ne suffit plus. C’est là que la fonction FRACTION.ANNEE (YEARFRAC en anglais) devient précieuse. Elle renvoie la fraction d’année entre deux dates, selon une convention de calcul que vous choisissez.

Écart en années

La formule pour obtenir le nombre d’années complètes entre A2 et B2 :

=TRONQUE(FRACTION.ANNEE(A2;B2;2);0)

  • FRACTION.ANNEE(A2;B2;2) calcule la fraction d’année écoulée. Le paramètre 2 correspond à la convention « Actual/360 », adaptée à un comptage calendaire courant.
  • TRONQUE(…;0) supprime la partie décimale pour ne garder que les années entières. Sans TRONQUE, vous obtenez un résultat comme 3,42.
  • Pour conserver la précision décimale (utile dans un calcul financier), retirez simplement TRONQUE : =FRACTION.ANNEE(A2;B2;2).

Écart en mois

Le principe est identique, avec une multiplication par 12 :

=TRONQUE(FRACTION.ANNEE(A2;B2;2)*12;0)

Cette formule renvoie le nombre de mois complets. Pour une personne née le 15 mars 1990 avec une date de référence au 10 juin 2024, vous obtiendrez le total de mois écoulés, sans les approximations que DATEDIF introduit parfois avec l’argument « m ».

Vue de dessus d'un bureau avec un tableau de calcul de dates imprimé, annotations manuscrites et smartphone affichant un calendrier

Formule manuelle avec ANNEE, MOIS et JOUR pour un écart détaillé

Vous avez besoin d’afficher « 3 ans, 4 mois et 12 jours » dans une seule cellule ? Ni la soustraction ni FRACTION.ANNEE ne gèrent nativement ce format. Il faut combiner plusieurs fonctions date.

Le principe

On décompose l’écart en extrayant séparément l’année, le mois et le jour de chaque date, puis on calcule la différence pour chaque composante. Voici une approche pas à pas (date de début en A2, date de fin en B2) :

Pour les années : =ANNEE(B2)-ANNEE(A2)-SI(DATE(ANNEE(B2);MOIS(A2);JOUR(A2))>B2;1;0)

Cette formule vérifie si l’anniversaire de la date de début est déjà passé dans l’année de la date de fin. Si ce n’est pas le cas, elle retire une année.

Pour les mois restants et les jours restants, le calcul s’allonge. La formule complète tient en trois blocs concaténés avec l’opérateur & pour afficher le résultat en texte lisible. C’est plus verbeux que DATEDIF, mais chaque étape est compréhensible et vérifiable.

Quand privilégier cette méthode

  • Quand le résultat doit apparaître sous forme de texte (« X ans, Y mois, Z jours ») dans un tableau RH ou un document administratif.
  • Quand vous avez besoin d’un contrôle total sur la logique de calcul, sans dépendre d’une fonction non documentée.
  • Quand votre fichier sera repris par d’autres utilisateurs qui doivent pouvoir auditer les formules.

Fonction DAYS et JOURS.OUVRES pour des cas spécifiques dans Excel

Excel propose aussi la fonction DAYS (ou JOURS en français), qui renvoie le nombre de jours entre deux dates. En pratique, elle fait la même chose que la soustraction directe, mais son nom rend la formule plus explicite dans un classeur complexe.

=JOURS(B2;A2)

Pour un contexte professionnel où seuls les jours ouvrés comptent (calcul de délais contractuels, suivi de projet), tournez-vous vers NB.JOURS.OUVRES ou NB.JOURS.OUVRES.INTL. Cette dernière permet de définir quels jours de la semaine sont considérés comme repos, et d’exclure une plage de jours fériés.

=NB.JOURS.OUVRES.INTL(A2;B2;1;Feries)

Le paramètre 1 correspond à un week-end samedi-dimanche. « Feries » désigne une plage de cellules contenant vos dates de jours fériés. Ces fonctions sont disponibles dans Excel 365, Excel pour le web et les versions desktop récentes.

Le choix entre ces méthodes dépend de ce que vous comptez : des jours calendaires, des mois entiers, des années, ou des jours ouvrés. La soustraction directe couvre la majorité des besoins quotidiens. FRACTION.ANNEE combinée à TRONQUE gère les mois et les années avec fiabilité. Les formules manuelles ANNEE/MOIS/JOUR offrent un affichage détaillé au prix d’une syntaxe plus longue. Dans tous les cas, ces alternatives sont documentées, auditables et disponibles dans l’autocomplétion, ce que DATEDIF ne peut pas offrir.

Choix de la rédaction