Aller au contenu principal

Qu'est-ce que la fonction JOURS ?

Définition
La fonction JOURS calcule la différence en jours calendaires entre deux dates en soustrayant la date de début de la date de fin. Elle renvoie un entier, positif si date_fin est postérieure à date_début, négatif dans le cas inverse.

JOURS (DAYS en anglais) te sert dès que tu veux sécuriser un calcul de délai que tu ferais autrement par une simple soustraction de dates, avec le risque de la voir échouer silencieusement sur une cellule mal formatée. Tu t'en sers pour bâtir un suivi de délais fiable : durée d'un projet, ancienneté d'un collaborateur, jours écoulés depuis une facture.

La grande force de JOURS, c'est sa clarté : =JOURS(date_fin;date_début) se lit comme on le prononce. Elle se met à jour automatiquement quand tu la combines avec AUJOURDHUI(), ce qui en fait la base idéale des tableaux de bord de suivi de délais.

Syntaxe

Clique sur un argument pour aller à son explication.

Lucas, la mascotte du Dojo, inspecte les arguments de la fonction à la loupe

Comprendre chaque paramètre de la fonction JOURS

Les deux dates s'écrivent dans l'ordre inverse de ce qu'on dit à voix haute : la date_fin vient en premier, la date_début en second. Inverse-les et tu récoltes un nombre négatif au lieu du décompte attendu. Les deux sont obligatoires, et l'une comme l'autre accepte une cellule, une date entre guillemets ou un résultat de fonction comme AUJOURDHUI().

1

date_fin

: la date jusqu'à laquelle tu veux calculer

Tu peux passer une référence de cellule, une date saisie en dur entre guillemets ("31/12/2024"), le résultat d'une fonction comme AUJOURDHUI() ou DATE(2024;12;31).

Si tu veux savoir combien de jours il reste avant une échéance, c'est la date d'échéance qui sera ta date_fin. Excel accepte les dates sous tous leurs formats valides : numéro de série interne, texte formaté en date, ou résultat de fonction.

2

date_début

: la date de départ du calcul

JOURS soustrait cette date de date_fin pour obtenir le nombre de jours. L'ordre des paramètres est date_fin en premier, date_début en second, ce qui est l'inverse de ce à quoi on pourrait s'attendre.

Si date_début est postérieure à date_fin, le résultat sera négatif. Cela peut être utile pour identifier des retards ou détecter des inversions de dates dans tes données.

Attention : Si l'une des deux dates est du texte non convertible, comme « En attente », JOURS retourne #VALEUR!. Une cellule vide ne déclenche pas d'erreur : elle vaut zéro, donc le 00/01/1900, ce qui donne un résultat aberrant sans prévenir. Vérifie que tes cellules contiennent des dates valides, notamment après un import de données.

Le conseil du pro
JOURS attend ses dates dans l'ordre inverse de ce qu'on dit à voix haute : date_fin en premier, date_début en second. Inverse-les et tu récoltes un nombre négatif au lieu du décompte. En cas de doute, enveloppe le tout dans ABS pour toujours obtenir un résultat positif.
Lucas, la mascotte du Dojo, fait une démonstration pas à pas de la fonction dans Excel

Exemples pratiques pas à pas

Exemple 1

Comment calculer le nombre de jours entre deux dates avec la fonction JOURS

Le comité de pilotage veut savoir combien de temps a réellement duré chaque projet de l'année. Tu as la liste des projets avec leur responsable, leur date de début et leur date de fin, et il te faut la durée en jours sur toute la colonne. La fonction JOURS te donne le nombre de jours entre deux dates d'un coup, sans que tu comptes les cases d'un calendrier.

Les étapes
  1. 1
    Dans une cellule, écris =JOURS(.
  2. 2
    En 1er argument : clique sur la date qui arrive en dernier dans le temps, D2. Elle contient le 15 mai 2024 pour le projet PRJ-01, et c'est ce qui déroute au début, car on dit « du 1er mars au 15 mai » alors qu'Excel réclame la date de fin en premier.
  3. 3
    En 2ᵉ argument : clique sur la date d'où part le décompte, C2. Elle porte le 1er mars 2024 pour ce projet, et la fonction JOURS la retranche de la date de fin ; intervertir les deux références donne le même écart, mais en négatif.
  4. 4
    Ferme la parenthèse et appuie sur Entrée, puis recopie la formule vers le bas pour obtenir la durée de chaque projet de la liste.
Au final, ta formule devrait ressembler à ça :=JOURS(D2; C2)
Explication
La fonction JOURS retranche le 1er mars du 15 mai et renvoie 75 jours calendaires pour le projet PRJ-01, week-ends compris. Recopiée vers le bas, elle donne la durée de chaque projet de la liste, et comme le résultat est un entier tu peux le réutiliser tel quel dans un calcul de coût journalier.
Exemple 2

Comment calculer le nombre de jours restants avant une échéance avec les fonctions JOURS et AUJOURDHUI

Nous sommes le 15 janvier 2025, un client t'appelle pour savoir si sa facture est encore dans les temps, et tu n'as pas envie de rouvrir le calendrier à chaque coup de fil. Tes factures sont listées avec leur date d'échéance, et tu veux un décompte des jours restants qui soit juste chaque matin sans que tu y touches. En imbriquant la fonction AUJOURDHUI dans la fonction JOURS, le compteur se recalcule tout seul à l'ouverture du fichier.

Les étapes
  1. 1
    Dans une cellule, écris =JOURS(.
  2. 2
    En 1er argument : clique sur l'échéance à surveiller, C2. Elle porte le 20 janvier 2025 pour la facture FAC-2451, et comme c'est le point d'arrivée du décompte, elle vient en premier dans la fonction JOURS.
  3. 3
    En 2ᵉ argument : écris la fonction AUJOURDHUI() au lieu d'une date figée, car elle renvoie la date du jour sans prendre aucun argument. Excel la réévalue à chaque ouverture du classeur, donc le nombre de jours restants baisse d'une unité chaque jour sans que tu retouches la colonne.
  4. 4
    Ferme la parenthèse de la fonction JOURS et appuie sur Entrée. Celle de la fonction AUJOURDHUI est déjà refermée, ses parenthèses vides restant obligatoires même sans argument.
Voici la formule que tu obtiens à la fin :=JOURS(C2; AUJOURDHUI())
Explication
La fonction JOURS compte les jours qui séparent la date du jour de l'échéance, soit 5 jours pour la facture FAC-2451 (le tableau est figé au 15 janvier 2025). Quand l'échéance est déjà derrière nous, le décompte passe en négatif : la facture FAC-2453 affiche -5, autrement dit cinq jours de retard.
Exemple 3

Comment afficher un statut automatique avec les fonctions JOURS et SI

Un tableau qui affiche « -5 » ne parle à personne quand tu l'envoies par mail à ton chef. Tu repars des mêmes factures et de leur date d'échéance, mais cette fois tu veux un mot lisible dans la colonne plutôt qu'un nombre à décoder. La fonction SI se sert du décompte produit par la fonction JOURS et écrit le statut à ta place, ligne après ligne.

Les étapes
  1. 1
    Dans une cellule, écris =SI(.
  2. 2
    En 1er argument : écris le test qui départage les factures, JOURS(B2; AUJOURDHUI())<0. La fonction JOURS calcule les jours qui restent jusqu'à l'échéance B2, et lui accoler <0 revient à demander si cette échéance est déjà derrière nous.
  3. 3
    En 2ᵉ argument : écris ce qui s'affiche quand le test est vrai, "En retard". Les guillemets sont obligatoires pour qu'Excel traite ces mots comme du texte à recopier tel quel et non comme un nom de plage.
  4. 4
    En 3ᵉ argument : écris ce qui s'affiche quand le test est faux, "Dans les temps". La fonction SI choisit toujours entre ces deux sorties, jamais une troisième.
  5. 5
    Ferme la parenthèse et appuie sur Entrée, puis recopie la formule vers le bas pour afficher le statut de chaque facture.
Une fois les morceaux assemblés, ta formule donne ça :=SI(JOURS(B2; AUJOURDHUI())<0; "En retard"; "Dans les temps")
Explication
La fonction JOURS fait le calcul, la fonction SI traduit le nombre en mot. La facture FAC-2451 arrive à échéance dans 5 jours, le décompte est positif, le test <0 est donc faux et la colonne affiche « Dans les temps ». Comme la date du jour se réévalue toute seule, un statut bascule de lui-même le lendemain de l'échéance.
Exemple 4

Comment gérer l'erreur #VALEUR! avec les fonctions JOURS et SIERREUR

Tu récupères l'export d'un outil de suivi et la colonne des dates de fin contient des « En attente » tapés à la main. Résultat, ta colonne de durées se couvre de #VALEUR! et le tableau devient illisible à une heure de la réunion. La fonction SIERREUR enveloppe la fonction JOURS et remplace chaque erreur par un message clair, sans que tu ailles nettoyer les lignes une par une.

Les étapes
  1. 1
    Dans une cellule, écris =SIERREUR(.
  2. 2
    En 1er argument : écris le calcul normal, JOURS(C2; B2), qui rend la durée du dossier en jours quand les deux cellules contiennent bien des dates. C'est ce résultat que la fonction SIERREUR laisse passer tant qu'aucune erreur ne surgit.
  3. 3
    En 2ᵉ argument : écris ce que la fonction doit afficher à la place de l'erreur, "Date à saisir". Ce texte n'apparaît que si la fonction JOURS échoue, et le calcul reste intact sur toutes les lignes où les dates sont valides.
  4. 4
    Ferme la parenthèse et appuie sur Entrée, puis recopie la formule vers le bas pour couvrir toute la colonne des durées.
En mettant tout bout à bout, tu écris :=SIERREUR(JOURS(C2; B2); "Date à saisir")
Explication
La fonction JOURS renvoie #VALEUR! dès qu'une cellule contient du texte au lieu d'une date, comme le « En attente » du dossier DOS-02. La fonction SIERREUR intercepte cette erreur et affiche « Date à saisir », pendant que les lignes valides gardent leur durée (75 jours pour DOS-01). Tu vois du premier coup d'oeil les dates qu'il te reste à renseigner.
Lucas, la mascotte du Dojo, l'air gêné face à une erreur Excel

Les erreurs fréquentes avec la fonction JOURS

Deux symptômes reviennent avec JOURS, et le plus fréquent est le #VALEUR! : il surgit dès qu'une de tes cellules contient du texte ressemblant à une date plutôt qu'une vraie date, ce qui arrive presque toujours après un import. L'autre cas, plus sournois car silencieux, c'est le résultat négatif quand tu as interverti date_fin et date_début.

Erreur #VALEUR! : date invalide restée en texte

Cette erreur apparaît quand l'un des arguments est du texte qu'Excel n'arrive pas à lire comme une date. Causes fréquentes : une mention libre du genre « En attente » tapée à la main, du texte non converti après un import, ou un format de date incorrect selon les paramètres régionaux du poste. Une cellule vide, en revanche, ne renvoie pas d'erreur : elle vaut zéro et donne un nombre de jours énorme.

Solution : Vérifie que tes cellules sont formatées en Date via Ctrl+1. Si des dates sont en texte, utilise la fonction DATEVAL pour les convertir. Tu peux aussi protéger la formule avec =SIERREUR(JOURS(B2;A2);"").

Résultat négatif inattendu

JOURS soustrait date_début de date_fin. Si tu as inversé l'ordre des paramètres, ou si date_début est postérieure à date_fin dans tes données, le résultat est négatif.

Solution : Vérifie l'ordre des paramètres : date_fin en premier, date_début en second. Pour obtenir toujours un nombre positif quelle que soit l'orientation, utilise =ABS(JOURS(B2;A2)). Pour détecter les inversions de dates dans tes données, filtre sur les résultats négatifs.

Lucas, la mascotte du Dojo, compare deux fonctions Excel

JOURS vs DATEDIF vs NB.JOURS.OUVRES vs soustraction directe

Prends JOURS quand tu veux juste un nombre de jours calendaires bien lisible : elle fait la même chose que =fin-début mais te prévient par une erreur si une des cellules n'est pas une date. Bascule sur DATEDIF dès que tu raisonnes en mois ou en années (ancienneté), et sur NB.JOURS.OUVRES quand les week-ends et jours fériés ne doivent pas compter, comme pour un délai contractuel.

CritèreJOURSDATEDIFNB.JOURS.OUVRESSoustraction directe
Ce que ça calculeJours calendaires entre deux datesDifférence en jours, mois ou annéesJours ouvrés uniquementJours calendaires (=fin-début)
Unités disponiblesJours uniquementJours, mois, annéesJours ouvrésJours uniquement
Gestion des jours fériésNonNonOui (paramètre optionnel)Non
LisibilitéTrès claireClaire mais syntaxe spécifiqueClaireMoins explicite
Cas typiqueDurée de projet, délai factureAncienneté en années/moisDélais contractuelsCalculs rapides
Le savais-tu ?
JOURS(B2;A2) et B2-A2 donnent le même nombre, mais JOURS a deux atouts : elle s'auto-documente, on voit tout de suite qu'on compte des jours, et elle lève une erreur claire si une cellule n'est pas une date, là où la soustraction peut renvoyer un résultat étrange sans prévenir.
FAQ

Questions fréquentes

JOURS calcule simplement le nombre de jours calendaires entre deux dates. DATEDIF est plus polyvalente : elle peut calculer la différence en années ("Y"), en mois ("M") ou en jours ("D"), et même des combinaisons comme les mois complets restants après les années. Utilise JOURS pour un comptage de jours simple et lisible.

Ressources

Pour aller plus loin

Continue sur ta lancée après la fonction JOURS : la leçon associée, un modèle prêt à l'emploi et le guide pour progresser.

Tout voir