ElyxAI

SERIE.JOUR.OUVRE : Calculez des dates en jours ouvrés avec Excel

Intermédiaire
=SERIE.JOUR.OUVRE(date_début; jours; [jours_fériés])

La formule SERIE.JOUR.OUVRE est un outil indispensable pour tous les professionnels qui travaillent avec des calendriers et des délais. Elle permet de calculer une date future ou passée en ajoutant ou en soustrayant un nombre spécifique de jours ouvrés, tout en excluant automatiquement les weekends et les jours fériés. Cette fonction est particulièrement utile dans les domaines de la gestion de projet, des ressources humaines, de la logistique et de la comptabilité, où il est crucial de respecter les délais réels de travail. Contrairement à la simple addition de jours avec la fonction DATE, SERIE.JOUR.OUVRE tient compte de la réalité du calendrier professionnel. Elle exclut les samedis et dimanches par défaut, et permet en plus de spécifier une liste de jours fériés personnalisés selon votre pays ou votre organisation. Cela garantit que vos calculs de délais reflètent précisément le nombre de jours réellement travaillés. Cette formule est disponible dans toutes les versions modernes d'Excel et offre une flexibilité remarquable pour adapter les calculs à votre contexte professionnel spécifique, qu'il s'agisse de planification de projet, de gestion de délais de livraison ou de calcul de dates d'échéance.

Syntaxe et paramètres

La syntaxe complète de SERIE.JOUR.OUVRE est : =SERIE.JOUR.OUVRE(date_début; jours; [jours_fériés]). Le premier paramètre, date_début, est obligatoire et représente la date de référence à partir de laquelle vous souhaitez calculer. Cette date peut être entrée directement (DATE(2024;1;15)) ou référencée depuis une cellule. Le deuxième paramètre, jours, est également obligatoire et indique le nombre de jours ouvrés à ajouter (valeur positive) ou à soustraire (valeur négative). Un nombre positif calcule une date future, tandis qu'un nombre négatif remonte dans le temps. Le troisième paramètre, jours_fériés, est optionnel mais fortement recommandé. Il permet de spécifier une plage de cellules contenant les dates des jours fériés à exclure du calcul. Par défaut, la formule exclut uniquement les samedis et dimanches. Sans ce paramètre, les jours fériés seront comptabilisés comme des jours ouvrés, ce qui fausserait vos calculs. Vous pouvez créer une liste centralisée de jours fériés dans votre classeur et la référencer dans chaque formule. Conseil pratique : utilisez toujours des références absolues ($A$1:$A$15) pour la plage de jours fériés afin de faciliter la copie de la formule dans d'autres cellules sans erreur.

start_date
Date de début
days
Nombre de jours ouvrés
holidays
Plage de jours fériés
Optionnel

Exemples pratiques

Calcul de date de livraison avec délai professionnel

=SERIE.JOUR.OUVRE(DATE(2024;1;15);5;$A$1:$A$10)

Cette formule ajoute 5 jours ouvrés à partir du 15 janvier 2024. Elle exclut automatiquement les samedis et dimanches, ainsi que les jours fériés listés dans la plage A1:A10. Si le 20 janvier est un samedi, la formule saute au lundi 22 janvier.

Calcul de date limite de réponse pour un appel d'offres

=SERIE.JOUR.OUVRE(DATE(2024;2;1);10;Fériés)

La formule ajoute 10 jours ouvrés au 1er février. Elle référence une plage nommée 'Fériés' contenant tous les jours fériés applicables. Cela garantit que la date limite respecte précisément 10 jours de travail réels.

Calcul rétroactif de date de début de projet

=SERIE.JOUR.OUVRE(DATE(2024;3;31);-20;$Fériés$1:$Fériés$15)

Cette formule soustrait 20 jours ouvrés à partir du 31 mars. Le nombre négatif (-20) indique qu'on remonte dans le temps. La plage de fériés en références absolues garantit que le calcul tient compte de tous les jours non travaillés.

Points clés à retenir

  • SERIE.JOUR.OUVRE calcule une date en ajoutant ou soustrayant des jours ouvrés, excluant automatiquement les weekends (sam-dim) et les jours fériés spécifiés
  • Utilisez toujours le paramètre jours_fériés pour garantir des calculs précis en environnement professionnel, sinon les fériés seront comptabilisés comme des jours travaillés
  • Créez une plage nommée pour vos jours fériés et référencez-la avec des adresses absolues ($) pour faciliter la maintenance et éviter les erreurs
  • Testez vos formules autour de périodes critiques (jours fériés, vacances) et comparez les résultats avec un calendrier pour valider la configuration
  • Combinez SERIE.JOUR.OUVRE avec d'autres fonctions (NETWORKDAYS, TEXTE, IF) pour créer des systèmes de planification robustes et informatifs

Astuces de pro

Créez une plage nommée pour vos jours fériés (par exemple 'Fériés' ou 'JoursFériés_2024'). Cela rend vos formules plus lisibles et facilite la maintenance annuelle. Allez dans Formules > Définir un nom.

Impact : Réduit les erreurs de référence, améliore la lisibilité du classeur et permet de mettre à jour rapidement tous les calculs en modifiant une seule plage.

Utilisez toujours des références absolues ($A$1:$A$15) pour la plage de jours fériés quand vous copiez la formule. Cela garantit que tous les calculs du classeur utilisent la même liste de fériés.

Impact : Évite les incohérences de calcul et les erreurs #REF! lors de la copie de formules. Assure la cohérence des résultats dans tout votre classeur.

Testez vos formules autour de périodes de jours fériés (Noël, Pâques, vacances d'été) pour vérifier que les calculs sont corrects. Comparez manuellement quelques résultats pour valider.

Impact : Détecte les erreurs de configuration avant de déployer les formules en production. Évite les mauvaises planifications basées sur des calculs incorrects.

Combinez SERIE.JOUR.OUVRE avec EDATE pour gérer les délais qui s'étendent sur plusieurs mois. EDATE ajoute des mois complets, SERIE.JOUR.OUVRE les jours ouvrés finals.

Impact : Permet de gérer des délais complexes s'étendant sur plusieurs périodes (ex: 3 mois + 5 jours ouvrés) avec précision.

Combinaisons utiles

Calcul de la date de livraison avec affichage du nombre de jours ouvrés écoulés

=TEXTE(SERIE.JOUR.OUVRE(A1;B1;$Fériés$1:$Fériés$15);"dddd dd mmmm yyyy")&" ("&NETWORKDAYS(A1;SERIE.JOUR.OUVRE(A1;B1;$Fériés$1:$Fériés$15);$Fériés$1:$Fériés$15)&" j.o.)"

Cette formule combine SERIE.JOUR.OUVRE pour calculer la date, TEXTE pour l'afficher en format lisible, et NETWORKDAYS pour vérifier le nombre de jours ouvrés. Le résultat affiche : 'jeudi 22 janvier 2024 (5 j.o.)'

Alerte si la date calculée tombe un weekend ou jour férié

=SI(OU(WEEKDAY(SERIE.JOUR.OUVRE(A1;B1);2)>5;COUNTIF($Fériés$1:$Fériés$15;SERIE.JOUR.OUVRE(A1;B1;$Fériés$1:$Fériés$15))>0);"⚠ Vérifier";SERIE.JOUR.OUVRE(A1;B1;$Fériés$1:$Fériés$15))

Combine SERIE.JOUR.OUVRE avec WEEKDAY et COUNTIF pour vérifier que la date calculée n'est pas un weekend ou un jour férié. Affiche une alerte si anomalie détectée.

Calcul avec ajustement automatique si la date de début est un jour non travaillé

=SERIE.JOUR.OUVRE(SI(OU(WEEKDAY(A1;2)>5;COUNTIF($Fériés$1:$Fériés$15;A1)>0);SERIE.JOUR.OUVRE(A1;1;$Fériés$1:$Fériés$15);A1);B1;$Fériés$1:$Fériés$15)

Si la date de début est un weekend ou un jour férié, la formule la décale automatiquement au prochain jour ouvré avant de calculer les jours demandés. Évite les erreurs de calcul dues à des dates de départ invalides.

Erreurs courantes

#VALUE!

Cause : Le paramètre date_début n'est pas reconnu comme une date valide, ou le paramètre jours contient du texte au lieu d'un nombre. Par exemple : =SERIE.JOUR.OUVRE("15/01/2024";5) sans utiliser DATE().

Solution : Assurez-vous que la date est au format DATE() ou référencée depuis une cellule formatée en date. Vérifiez que le paramètre jours est bien un nombre entier. Utilisez =SERIE.JOUR.OUVRE(DATE(2024;1;15);5) plutôt que des chaînes texte.

#REF!

Cause : La plage de jours fériés référencée n'existe pas ou a été supprimée. Par exemple, si vous référencez =SERIE.JOUR.OUVRE(A1;5;C:C) et que la colonne C est ensuite supprimée.

Solution : Vérifiez que la plage de jours fériés existe toujours. Utilisez des plages explicites comme $A$1:$A$10 plutôt que des colonnes entières. Créez une plage nommée stable pour les jours fériés.

#NUM!

Cause : Le nombre de jours spécifié est trop grand ou trop petit, ou il y a un problème de format dans la plage de jours fériés (dates invalides). Par exemple, des dates mal formatées dans la liste des fériés.

Solution : Vérifiez que toutes les dates dans la plage de jours fériés sont correctement formatées. Testez avec un nombre de jours plus petit. Assurez-vous que la plage ne contient que des dates valides, pas du texte ou des cellules vides.

Checklist de dépannage

  • 1.Vérifiez que la date de début est au format DATE() ou provient d'une cellule formatée en date, pas une chaîne texte
  • 2.Assurez-vous que le paramètre jours est un nombre entier (positif ou négatif), pas du texte ou une formule complexe non évaluée
  • 3.Confirmez que la plage de jours fériés contient uniquement des dates valides, sans cellules vides, texte ou erreurs
  • 4.Vérifiez que la plage de jours fériés utilise des références absolues ($A$1:$A$15) si vous copiez la formule dans d'autres cellules
  • 5.Testez la formule avec un nombre de jours réduit (ex: 1 ou 2) pour isoler les problèmes avant d'utiliser les vrais paramètres
  • 6.Comparez le résultat avec un calcul manuel sur un calendrier pour vérifier que les weekends et fériés sont correctement exclus

Cas particuliers

La date de début est elle-même un jour férié ou un weekend

Comportement : SERIE.JOUR.OUVRE considère cette date comme point de départ et commence à compter les jours ouvrés à partir du jour ouvré suivant. Par exemple, si vous commencez un lundi qui est férié, le calcul commence le mardi.

Solution : Si vous voulez que la date de début soit toujours un jour ouvré, ajoutez une vérification : =SERIE.JOUR.OUVRE(SI(OU(WEEKDAY(A1;2)>5;COUNTIF($Fériés$1:$Fériés$15;A1)>0);SERIE.JOUR.OUVRE(A1;1;$Fériés$1:$Fériés$15);A1);B1;$Fériés$1:$Fériés$15)

Cela garantit que la date de départ est toujours un jour ouvré avant d'appliquer le calcul principal.

Le nombre de jours spécifié est 0

Comportement : SERIE.JOUR.OUVRE retourne la date de début elle-même (ou le prochain jour ouvré si la date de début est un weekend/férié). C'est un comportement logique mais rarement utilisé.

Solution : Utilisez cette propriété intentionnellement pour normaliser une date au prochain jour ouvré : =SERIE.JOUR.OUVRE(A1;0;$Fériés$1:$Fériés$15)

Utile pour créer une colonne de dates normalisées au format 'jours ouvrés'.

La plage de jours fériés contient des dates en double ou désordonnées

Comportement : SERIE.JOUR.OUVRE fonctionne toujours correctement car il vérifie simplement si chaque date calculée est dans la liste, peu importe l'ordre ou les doublons. Aucune erreur n'est générée.

Bien que les doublons n'causent pas d'erreur, il est recommandé de nettoyer la liste pour des raisons de performance et de clarté. Utilisez Données > Supprimer les doublons.

Limitations

  • SERIE.JOUR.OUVRE exclut toujours les samedis et dimanches par défaut et ne permet pas de configurer des jours de travail différents (ex: semaine de 4 jours). Pour cela, utilisez WORKDAY.INTL qui offre plus de flexibilité.
  • La fonction ne gère pas les horaires partiels ou les heures. Elle fonctionne uniquement au niveau des jours. Pour des calculs incluant les heures (ex: délai de 5 jours + 3 heures), vous devez créer des formules personnalisées.
  • Les jours fériés doivent être spécifiés manuellement dans une plage. Il n'existe pas de calendrier de jours fériés intégré par pays. Vous devez créer et maintenir votre propre liste.
  • SERIE.JOUR.OUVRE ne supporte pas les plages non contiguës. Si vos jours fériés sont dans plusieurs colonnes séparées, vous devez les consolider dans une seule plage ou utiliser plusieurs formules avec UNION.

Alternatives

Offre plus de flexibilité en permettant de définir précisément quels jours de la semaine sont travaillés (par défaut lun-ven, mais configurable pour 4 jours, horaires décalés, etc.). Syntaxe : WORKDAY.INTL(date_début; jours; [weekend]; [jours_fériés])

Quand : Idéale pour les organisations avec des horaires non standards, comme les entreprises avec semaine de 4 jours ou travail le dimanche.

Combinaison manuelle permettant de calculer d'abord le nombre de jours ouvrés nécessaires, puis d'ajouter ce nombre à la date de début. Offre une transparence totale sur le calcul.

Quand : Utile quand vous avez besoin de visualiser le nombre de jours ouvrés intermédiaires ou de créer un suivi détaillé du calcul.

Permet de créer des fonctions entièrement personnalisées intégrant des règles métier complexes (jours fériés mobiles, jours de congé individuels, etc.).

Quand : Pour les organisations avec des règles de calcul très spécifiques impossibles à gérer avec les formules natives d'Excel.

Compatibilité

Excel

Depuis Excel 2007

=SERIE.JOUR.OUVRE(date_début; jours; [jours_fériés]) - Disponible dans toutes les versions modernes (2007, 2010, 2013, 2016, 2019, 365)

Google Sheets

=WORKDAY(date_début; jours; [jours_fériés]) - Google Sheets utilise WORKDAY au lieu de SERIE.JOUR.OUVRE, mais la syntaxe et le comportement sont identiques

Les plages nommées et les références fonctionnent de la même manière. Les jours fériés doivent être au format date valide.

LibreOffice

=SERIE.JOUR.OUVRE(date_début; jours; [jours_fériés]) - Syntaxe identique à Excel, fonction entièrement compatible

Questions fréquentes

Simplifiez vos calculs de délais avec ElyxAI, votre assistant Excel intelligent. Découvrez comment optimiser vos formules de gestion de projet et automatiser vos plannings professionnels.

Explorer Date et heure

Formules connexes