Calculer le nombre de jours avant une échéance, l’âge d’une personne ou les jours ouvrés d’un projet paraît simple, jusqu’à ce qu’Excel affiche un nombre étrange, une rangée de dièses ou une erreur. Le problème vient rarement de la formule elle-même : il vient presque toujours de la façon dont Excel comprend les dates.
Dans ce guide, vous verrez comment Excel enregistre les dates, comment soustraire et ajouter des délais, comment calculer des mois et des âges avec DATEDIF, comment compter les jours ouvrés en tenant compte des jours fériés et que faire lorsqu’une date importée ne se comporte pas comme une date.
Comment Excel enregistre les dates
Pour Excel, une date est un nombre entier auquel on applique un format de date. Chaque jour ajoute 1 à partir du 1er janvier 1900, qui vaut 1. C’est pourquoi le 1er janvier 2025 correspond au nombre 45658 et le 15 mars 2025 au nombre 45731. Les heures sont la partie décimale : midi équivaut à 0,5.
Vous pouvez le vérifier : saisissez une date, sélectionnez la cellule et passez le format à Standard dans Accueil › Nombre. Vous verrez le numéro de série. Cette idée explique presque tout le reste :
- Soustraire deux dates donne le nombre de jours qui les séparent.
- Ajouter un nombre à une date la décale d’autant de jours.
- Si le résultat s’affiche comme une date alors que vous attendiez des jours, c’est seulement un problème de format.
Calculer le nombre de jours entre deux dates
C’est le calcul le plus courant : jours entre une commande et sa livraison, entre une facture et son paiement, entre l’ouverture et la clôture d’un incident. Il suffit de soustraire la date la plus ancienne de la plus récente.
| Commande | Date de commande (A) | Date de livraison (B) | Jours (C) |
|---|---|---|---|
| Commande 1 | 03/02/2025 | 17/02/2025 | 14 |
| Commande 2 | 25/02/2025 | 10/03/2025 | 13 |
| Commande 3 | 28/03/2025 | 02/04/2025 | 5 |
En C2, saisissez la formule et recopiez-la vers le bas :
=B2-A2
Si vous voyez une date comme 14/01/1900 au lieu de 14, Excel a repris le format des cellules d’origine. Passez la colonne C au format Standard ou Nombre et le nombre de jours apparaîtra.
Pour calculer les jours restants avant une échéance, utilisez la date du jour avec AUJOURDHUI(), qui se met à jour à chaque ouverture du fichier :
=B2-AUJOURDHUI()
Un résultat négatif signifie que l’échéance est dépassée. Vous pouvez l’associer à une mise en forme conditionnelle pour afficher en rouge les valeurs inférieures à zéro.
Mois, années et âges avec DATEDIF
Soustraire des dates donne des jours, mais les mois n’ont pas tous la même durée. Pour compter des mois ou des années complets, on utilise DATEDIF, une ancienne fonction qui fonctionne toujours dans toutes les versions d’Excel, même si elle n’apparaît ni dans la saisie semi-automatique ni dans l’assistant de fonctions. Il faut la taper en entier.
Sa syntaxe est DATEDIF(date_début;date_fin;unité). La date de début doit être antérieure à la date de fin ; sinon, la fonction renvoie l’erreur #NOMBRE!. Avec 15/01/2024 en A2 et 14/07/2025 en B2, voici les résultats selon l’unité :
| Unité | Ce qu’elle compte | Résultat |
|---|---|---|
| « Y » | Années complètes | 1 |
| « M » | Mois complets | 17 |
| « D » | Jours | 546 |
| « YM » | Mois restants une fois les années retirées | 5 |
| « MD » | Jours restants une fois les mois retirés | 29 |
Notez que le résultat en mois est 17 et non 18 : au 14 juillet, il manque encore un jour pour compléter le mois. DATEDIF ne compte que des périodes complètes.
=DATEDIF(A2;B2;"M")
Calculer un âge
Si la date de naissance se trouve en B2, l’âge actuel en années est :
=DATEDIF(B2;AUJOURDHUI();"Y")
Et si vous voulez un texte du type « 34 ans et 5 mois », reliez deux calculs avec l’opérateur & :
=DATEDIF(B2;AUJOURDHUI();"Y")&" ans et "&DATEDIF(B2;AUJOURDHUI();"YM")&" mois"
Évitez l’unité "MD" dans les calculs importants : Microsoft indique qu’elle peut donner des résultats incorrects dans certains cas, surtout autour des fins de mois.
Ajouter des jours, des mois et des fins de mois
Pour ajouter des jours, il suffit d’additionner un nombre. Si une facture émise à la date en A2 est payable à 30 jours :
=A2+30
Ajouter des mois est différent, car « un mois » ne fait pas toujours 30 jours. Utilisez MOIS.DECALER, qui respecte le calendrier. Par exemple, pour une révision trois mois après la date en A2 :
=MOIS.DECALER(A2;3)
Si la date de départ est le 31/01/2025 et que vous ajoutez un mois, le résultat est le 28/02/2025 : Excel se cale sur le dernier jour du mois lorsque le jour n’existe pas. Avec un nombre négatif, vous retirez des mois.
Pour obtenir le dernier jour du mois d’une date, pratique pour les échéances « fin de mois », utilisez FIN.MOIS :
=FIN.MOIS(A2;0)
Compter et ajouter des jours ouvrés
Les délais de livraison ou de projet ne comptent souvent que les jours ouvrés. NB.JOURS.OUVRES compte les jours du lundi au vendredi entre deux dates, toutes deux incluses, et peut exclure une liste de jours fériés.
- Saisissez les jours fériés dans une colonne à part, par exemple F2:F10, un par cellule et sous forme de vraies dates.
- Placez la date de début en A2 et la date de fin en B2.
- Écrivez la formule en figeant la plage des jours fériés avec
$pour pouvoir la recopier.
=NB.JOURS.OUVRES(A2;B2;$F$2:$F$10)
Entre le 01/04/2025 et le 30/04/2025, il y a 22 jours du lundi au vendredi. Si votre liste contient deux jours fériés qui tombent en semaine ce mois-là, le résultat sera 20.
Calculer une date de livraison en jours ouvrés
Si vous avez besoin de la date obtenue, utilisez SERIE.JOUR.OUVRE. En partant du vendredi 07/03/2025, dix jours ouvrés plus tard, on arrive au vendredi 21/03/2025 :
=SERIE.JOUR.OUVRE(A2;10;$F$2:$F$10)
Quand une date n’est pas une date
Le problème le plus fréquent survient quand vous importez des données d’un CSV, d’une banque ou d’un autre logiciel : les dates arrivent sous forme de texte. Elles s’affichent correctement, mais les formules échouent ou renvoient #VALEUR!. Quelques signes :
- La date est alignée à gauche dans une cellule sans alignement manuel.
- En passant au format Standard, aucun numéro de série n’apparaît.
- Au tri, « 02/01/2025 » passe avant « 15/12/2024 », car le tri se fait comme du texte.
Pour le confirmer, cette formule renvoie VRAI si A2 est une vraie date et FAUX si c’est du texte :
=ESTNUM(A2)
La solution la plus rapide est Données › Convertir : sélectionnez la colonne, cliquez deux fois sur Suivant et, à la troisième étape, choisissez Date avec le bon ordre (JMA si le jour vient en premier). Si les dates arrivent au format texte année-mois-jour (2025-03-15), vous pouvez les reconstruire avec une formule :
=DATE(GAUCHE(A2;4);STXT(A2;6;2);DROITE(A2;2))
Si vous travaillez souvent avec des fichiers CSV, les convertir d’abord en XLSX avec notre outil gratuit de conversion CSV vers Excel vous donne un classeur prêt à ouvrir. Vérifiez tout de même la colonne des dates avec ESTNUM avant de calculer, surtout si le fichier mélange des formats de différents pays.
Autres erreurs fréquentes
- Cellule remplie de ##### : la colonne est trop étroite ou le résultat est une date négative. Élargissez la colonne ou vérifiez l’ordre de la soustraction.
- Années à deux chiffres : « 01/02/30 » peut être interprété comme 1930 ou 2030 selon la configuration. Saisissez toujours l’année sur quatre chiffres.
- Jours et mois inversés : un fichier au format mois/jour transforme le 03/04 en 4 mars. Vérifiez avec des dates dont le jour est supérieur à 12.
Conclusion
Travailler avec des dates dans Excel devient simple dès que l’on se souvient qu’une date est un nombre. Soustrayez pour obtenir des jours, utilisez DATEDIF pour les mois, les années et les âges, MOIS.DECALER et FIN.MOIS pour les échéances calendaires, et NB.JOURS.OUVRES ou SERIE.JOUR.OUVRE pour les jours ouvrés. Avant de calculer, vérifiez que vos dates sont de vraies dates et non du texte : vous éviterez ainsi la plupart des erreurs.
Questions fréquentes
Pourquoi DATEDIF n’apparaît-elle pas dans la liste des fonctions ?
Excel la conserve pour des raisons de compatibilité, et elle n’apparaît ni dans la saisie semi-automatique ni dans l’assistant. Elle fonctionne malgré tout si vous la tapez entièrement avec ses trois arguments.
Comment calculer les heures entre deux dates avec heure ?
Soustrayez les deux cellules et multipliez par 24 : =(B2-A2)*24. Appliquez le format Standard ou Nombre au résultat pour voir les heures avec des décimales.
NB.JOURS.OUVRES compte-t-elle le jour de début et le jour de fin ?
Oui, elle inclut les deux s’il s’agit de jours ouvrés. Si vous obtenez 5 du lundi au vendredi de la même semaine, c’est normal. Retirez 1 si vous ne voulez que les jours écoulés.
Essayez nos outils gratuits
Comparez, convertissez, fusionnez et nettoyez vos feuilles de calcul depuis votre navigateur, sans rien installer.