NB.JOURS.OUVRES : Calculer facilement les jours ouvrables en Excel
=NB.JOURS.OUVRES(date_début; date_fin; [jours_fériés])La formule NB.JOURS.OUVRES est un outil indispensable pour tous les professionnels qui travaillent avec des calendriers et des délais. Elle permet de calculer le nombre de jours ouvrables (du lundi au vendredi) entre deux dates, en excluant automatiquement les week-ends. Cette formule est particulièrement utile en gestion de projet, en ressources humaines et en planification opérationnelle, où il est crucial de connaître le nombre réel de jours de travail disponibles. Contrairement à la fonction JOURS qui compte simplement tous les jours calendaires, NB.JOURS.OUVRES offre une vision plus réaliste du temps disponible pour exécuter une tâche. Elle prend en compte les week-ends et, sur demande, les jours fériés spécifiques à votre pays ou région. Cela en fait une formule de référence pour calculer les délais de livraison, estimer les durées de projet ou vérifier le respect des calendriers de travail. Dans ce guide complet, vous découvrirez comment utiliser NB.JOURS.OUVRES dans tous ses contextes, des cas simples aux situations complexes impliquant plusieurs jours fériés. Vous apprendrez également à l'intégrer avec d'autres fonctions pour créer des solutions de gestion de temps sophistiquées et adaptées à vos besoins professionnels.
Syntaxe et paramètres
La syntaxe de NB.JOURS.OUVRES est simple mais puissante : =NB.JOURS.OUVRES(date_début; date_fin; [jours_fériés]). Le premier paramètre, date_début, représente le point de départ du calcul. Il peut être saisi en tant que valeur de date directe (par exemple, "01/01/2024"), référence de cellule (A1) ou résultat d'une fonction date. Le deuxième paramètre obligatoire, date_fin, marque la fin de la période à analyser et suit les mêmes règles de saisie que date_début. Le troisième paramètre, jours_fériés, est optionnel mais extrêmement utile. Il accepte une plage de cellules contenant les dates des jours fériés à exclure du calcul. Par exemple, si vous avez une liste de jours fériés en E2:E12, vous pouvez les inclure directement. Il est important de noter que NB.JOURS.OUVRES exclut par défaut les samedis et dimanches. Si vous avez besoin d'exclure d'autres jours de la semaine (par exemple, pour une équipe travaillant mardi à samedi), utilisez plutôt NB.JOURS.OUVRES.INTL qui offre plus de flexibilité. Un conseil pratique : toujours vérifier que vos dates sont au bon format. Excel reconnaît généralement les formats standards (JJ/MM/AAAA), mais en cas de doute, utilisez la fonction DATE pour construire explicitement vos dates. De plus, assurez-vous que date_début soit antérieure ou égale à date_fin, sinon la formule retournera une valeur négative ou nulle.
start_dateend_dateholidaysExemples pratiques
Calcul simple entre deux dates
=NB.JOURS.OUVRES("15/01/2024";"19/01/2024")Cette formule compte les jours de travail entre ces deux dates. La période inclut : lundi 15, mardi 16, mercredi 17, jeudi 18 et vendredi 19 janvier. Les week-ends ne sont pas inclus dans le calcul.
Calcul avec jours fériés
=NB.JOURS.OUVRES("01/04/2024";"15/04/2024";F2:F5)La plage F2:F5 contient les jours fériés : 01/04/2024 (Lundi de Pâques), 01/05/2024 (Fête du Travail), 08/05/2024 (Victoire 1945), 19/05/2024 (Ascension). La formule exclut ces dates du calcul, donnant une estimation plus précise du délai réel.
Calcul avec références de cellules
=NB.JOURS.OUVRES(A2;B2;D$2:D$15)Cette formule utilise des références de cellules pour plus de flexibilité. Le symbole $ devant le numéro de ligne (D$2:D$15) permet de copier la formule vers d'autres lignes sans modifier la plage des jours fériés. C'est une approche professionnelle pour gérer des tableaux dynamiques.
Points clés à retenir
- NB.JOURS.OUVRES calcule les jours ouvrables (du lundi au vendredi) entre deux dates, excluant automatiquement les week-ends.
- Le paramètre jours_fériés est optionnel mais recommandé pour obtenir des calculs précis tenant compte de votre calendrier spécifique.
- La formule compte à la fois le jour de début et le jour de fin s'ils sont des jours ouvrables.
- Pour des calendriers non standards, utilisez NB.JOURS.OUVRES.INTL qui offre plus de flexibilité dans la définition des jours de repos.
- Combinez NB.JOURS.OUVRES avec d'autres fonctions (SI, JOUR.OUVRABLE, SOMME.SI) pour créer des solutions de gestion de projet sophistiquées.
Astuces de pro
Créez une plage nommée pour vos jours fériés (ex : "JoursFériés") afin de pouvoir la réutiliser facilement dans plusieurs formules sans devoir la ressaisir à chaque fois.
Impact : Gagne du temps, améliore la maintenabilité des formules et réduit les erreurs de référence.
Utilisez NB.JOURS.OUVRES en combinaison avec JOUR.OUVRABLE pour créer un système de gestion de projet automatisé : calculez les jours disponibles, puis estimez les dates de fin.
Impact : Permet une planification précise et une allocation de ressources optimisée.
Pour les calculs complexes impliquant plusieurs équipes avec des calendriers différents, créez des colonnes séparées avec des formules NB.JOURS.OUVRES.INTL utilisant des paramètres différents.
Impact : Offre une visibilité complète sur les capacités réelles de chaque équipe et facilite la prise de décision stratégique.
Testez toujours votre formule sur une période incluant un week-end et un jour férié pour vous assurer qu'elle fonctionne correctement avant de la déployer largement.
Impact : Évite les erreurs de calcul qui pourraient impacter des décisions importantes.
Combinaisons utiles
NB.JOURS.OUVRES + SI pour validation de délai
=SI(NB.JOURS.OUVRES(A1;B1)>=10;"Délai suffisant";"Délai critique")Cette combinaison vérifie si le nombre de jours ouvrables dépasse un seuil donné (ici 10 jours). Utile pour alerter automatiquement sur les projets à risque ou les délais serrés.
NB.JOURS.OUVRES + JOUR.OUVRABLE pour estimer une date de fin
=JOUR.OUVRABLE(A1;NB.JOURS.OUVRES(A1;B1)+5;D$2:D$15)Calcule le nombre de jours ouvrables entre deux dates, puis ajoute 5 jours ouvrables supplémentaires pour estimer une nouvelle date de fin. Parfait pour prolonger un délai de projet de manière professionnelle.
NB.JOURS.OUVRES + SOMME.SI pour agréger les données
=SOMME.SI(C:C;"Approuvé";NB.JOURS.OUVRES(A:A;B:B))Combine NB.JOURS.OUVRES avec SOMME.SI pour totaliser les jours ouvrables uniquement pour les lignes où une condition est remplie (par exemple, "Approuvé"). Utile pour les rapports de gestion.
Erreurs courantes
Cause : Les paramètres de date ne sont pas reconnus comme des dates valides. Cela peut survenir si vous saisissez une date au mauvais format ou si la cellule contient du texte au lieu d'une date.
Solution : Vérifiez le format des dates. Utilisez la fonction DATE pour construire explicitement vos dates : =NB.JOURS.OUVRES(DATE(2024;1;15);DATE(2024;1;19)) ou assurez-vous que les cellules sont formatées en tant que dates.
Cause : La plage de jours fériés référencée n'existe pas ou a été supprimée. Cela se produit souvent après la suppression accidentelle de colonnes contenant les jours fériés.
Solution : Vérifiez que la plage jours_fériés existe toujours. Recalculez la formule en sélectionnant à nouveau la bonne plage de jours fériés, ou utilisez un nom de plage défini pour plus de robustesse.
Cause : La date de début est postérieure à la date de fin, ou les deux dates sont identiques et correspondent à un week-end.
Solution : Vérifiez que date_début ≤ date_fin. Si date_début = date_fin et que c'est un jour ouvrable, le résultat est 1. Si c'est un week-end, le résultat est 0. Utilisez des formules conditionnelles (SI) pour gérer ces cas si nécessaire.
Checklist de dépannage
- 1.Vérifiez que les dates sont au bon format : utilisez DATE() ou assurez-vous que les cellules sont formatées en tant que dates, pas du texte.
- 2.Confirmez que la plage de jours fériés existe et contient des dates valides. Testez en cliquant sur la plage pour voir si elle est bien référencée.
- 3.Vérifiez que date_début est antérieure ou égale à date_fin. Un résultat négatif indique généralement un problème d'ordre des dates.
- 4.Assurez-vous que les jours fériés sont réellement des jours ouvrables (pas des week-ends) pour que l'exclusion ait un impact visible.
- 5.Testez la formule avec des valeurs simples et connues (par exemple, lundi à vendredi = 5 jours) avant de l'utiliser sur des données complexes.
- 6.Si vous copiez la formule, vérifiez que les références absolues ($) et relatives sont correctement configurées pour éviter les décalages de plage.
Cas particuliers
Les deux dates sont identiques et tombent un jour ouvrable (par exemple, mardi)
Comportement : La formule retourne 1, car ce jour est comptabilisé.
C'est le comportement attendu : un seul jour de travail.
Les deux dates sont identiques et tombent un week-end (par exemple, samedi)
Comportement : La formule retourne 0, car aucun jour ouvrable n'est inclus.
Solution : Si vous voulez un résultat différent, utilisez une formule conditionnelle pour gérer ce cas spécifique.
Utile pour éviter les calculs parasites sur des périodes vides.
La plage de jours fériés contient des valeurs non-date (du texte ou des nombres)
Comportement : Excel ignore silencieusement les valeurs invalides et continue le calcul avec les dates valides.
Solution : Nettoyez votre plage de jours fériés pour n'inclure que des dates valides. Utilisez la validation de données pour prévenir l'entrée de valeurs invalides.
Cela peut masquer des erreurs : toujours vérifier que la plage de jours fériés est correctement formatée.
Limitations
- •NB.JOURS.OUVRES ne gère que les jours pleins : elle ne peut pas calculer les heures de travail ou les jours partiels (par exemple, si quelqu'un travaille 4 heures ce jour-là).
- •La formule exclut toujours les samedis et dimanches : si votre entreprise fonctionne selon un calendrier différent (par exemple, du dimanche au jeudi), vous devez utiliser NB.JOURS.OUVRES.INTL.
- •Les jours fériés doivent être saisis manuellement ou importés : la formule ne reconnaît pas automatiquement les jours fériés en fonction du pays ou de la région, vous devez les fournir explicitement.
- •La performance peut diminuer avec de très grandes plages de jours fériés (plusieurs milliers de dates) : pour les calculs massifs, envisagez une approche différente ou optimisez votre structure de données.
Alternatives
Offre une flexibilité maximale en permettant de définir quels jours de la semaine sont considérés comme des jours de repos (pas seulement samedi-dimanche).
Quand : Idéale pour les entreprises fonctionnant selon des calendriers non standards (par exemple, fermées le vendredi-samedi ou dimanche-lundi).
Compatibilité
✓ Excel
Depuis 2007
=NB.JOURS.OUVRES(date_début; date_fin; [jours_fériés]) - Disponible dans Excel 2007, 2010, 2013, 2016, 2019 et 365. La syntaxe reste identique dans toutes les versions.✓Google Sheets
=NETWORKDAYS(start_date; end_date; [holidays]) - Google Sheets utilise le nom anglais NETWORKDAYS mais la syntaxe est identique.Fonctionne exactement comme Excel. Les plages de jours fériés sont gérées de la même manière. Compatible avec tous les formats de date standard.
✓LibreOffice
=NETWORKDAYS(start_date; end_date; [holidays]) - LibreOffice Calc utilise également le nom anglais NETWORKDAYS avec une syntaxe compatible.