SERIE.JOUR.OUVRE.INTL en excluant une plage

Bonjour à toutes et tous,

je planche depuis plusieurs heures sur un petit problème, mais sans réussir à trouver un solution.

J'explique :

Je souhaite trouver une date de "fin" de tâche, en connaissant la date de début de tâche, la durée, en excluant les dimanches, mais aussi les "vacances", saisies dans mon tableau dans 2 cellules : Date de début des vacances, et Date de fin des vacances.

J'utilise donc la formule =SERIE.JOUR.OUVRE.INTL([Date_debut];[Durée];[Weekend];[Férié])

Tout fonctionne bien hormis pour le paramètre "férié", que je souhaite utiliser pour retirer les vacances.

Le paramètre attend une liste exhaustive et unitaire de chaque date à ne pas compter comme ouvré, mais moi j'aimerai qu'elle utilise toutes les dates comprises entre les 2 dates de début en fin.

Sauriez-vous m'aider ?

NOTA : Je recherche une solution sans passer par des cellules intermédiaires où seraient listées toutes les dates comprises entre le début et la fin des vacances.

Je vous joins un fichier exemple.

Merci d'avance pour votre aide.

78classeur1.xlsx (10.50 Ko)

Bonjour,

Pour obtenir la liste complète de tous les jours entre la date de début B3 et la date de fin B4 ... tu peux tester :

=LIGNE(INDIRECT(B3&":"&B4))

En espèrant que cela t'aide ...

Bonsoir !

James007 Bravo !

Chef moi ça marche avec jour.ouvré "simple" car Excel 2007...

Ma formule "matricielle" :

=NB.JOURS.OUVRES(A1;A2;LIGNE(INDIRECT(B3&":"&B4)))

où A1 = date début

A2 = date de fin

B3 = date début vacances

B4 = date de fin vacances

le tout validé en matriciel [Shift]+[ctrl]+[entrée]

Merci encore James007 car sur le net je cherchai à "comment créer une constante matricielle" désignation du paramètre facultatif de

JOUR.OUVRE.INTEL

@ bientôt

LouReeD

Bonjour James007 et LouReeD,

merci pour cette réponse qui répond très bien à mon problème.

La formule finale dans la cellule B6 est donc :

=SERIE.JOUR.OUVRE.INTL(B1;B2-1;11;LIGNE(INDIRECT(B3&":"&B4)))

NOTE : Il faut rajouter un "-1" à l'argument "nombre de jours" afin de prendre en compte le jour de début comme jour travaillé.

Bonjour,

Ravi que cela puisse t'aider ...

Merci ... pour tes remerciements ...

Bonjour à toutes et tous,

J'avoue que je n'ais pas très bien compris les réponses apportées, notamment la formule dite finale par "piratman" ?

Car dans le fichier la date recherchée est le 19/09/2017 or la formule:

=SERIE.JOUR.OUVRE.INTL(B1;B2-1;11;LIGNE(INDIRECT(B3&":"&B4)))

donne le 13/09/2017 ?

Personnellement pour trouver la date du 19/09/2017, j'aurai plutôt vu cette formule en "B6":

=SERIE.JOUR.OUVRE.INTL(B1+1;B2;11)+B4-B3 

Me trompe-je ?

Cordialement.

Bonjour,

essayez avec une période de vacances plus grande qui comporte plusieurs dimanche.

Du coup avec B4-B3, les dimanches seront soustraient deux fois dans votre formule, un fois par la fonction et une fois par votre soustraction... Ici votre formule fonctionne car la période de vacances ne prend aucun dimanche. En intégrant les fériés dans la formules, les dimanches ne seront décomptés qu'une seule fois. (à moins que le fait d'être sous 2010 ou + il n'est pas besoin de "matricielle", de mon coté je ne peux essayer... mais la même formule sous 2007, je dois la valider en matricielle)

Si avec la formule vous ne trouvez pas le bon résultat il faut vérifier que vous avez bien votre formule entourée par des accolades

{ } et pour avoir ces accolades il faut valider la formule en "matricielle" c'est à dire en validant avec la combinaison de touches suivante :

[Shift]+[Ctrl]+[Entrée]

@ bientôt

LouReeD

@ LouReeD ...

Bonjour,

Merci pour ton explication ...

Tu as parfaitement raison ... cette astuce est principalement utilisée dans les matricielles ...

Content que cela puisse également te servir ...

mdo100 a écrit :

Bonjour à toutes et tous,

J'avoue que je n'ais pas très bien compris les réponses apportées, notamment la formule dite finale par "piratman" ?

Car dans le fichier la date recherchée est le 19/09/2017 or la formule:

=SERIE.JOUR.OUVRE.INTL(B1;B2-1;11;LIGNE(INDIRECT(B3&":"&B4)))

donne le 13/09/2017 ?

Personnellement pour trouver la date du 19/09/2017, j'aurai plutôt vu cette formule en "B6":

=SERIE.JOUR.OUVRE.INTL(B1+1;B2;11)+B4-B3 

Me trompe-je ?

Cordialement.

Effectivement mdo100, si tu ne valides pas la fonction en matricielle avec la combinaison de touche donné dans le post plus haut par LouReeD, la formule renvoie 13/09/2017, mais si tu la valides (apparition d'accolade autour de la formule), alors le résultat sera bien 19/09/2017

Re,

Autant pour moi, je sais ce que c'est une formule matricielle, j'avais simplement zappé l'explication pourtant clair de LouReeD et comme je trouvais le bon résultat avec ma formule, je pensais bien faire en le faisant remarquer.

Bonne continuation.

Cordialement.

Rechercher des sujets similaires à "serie jour ouvre intl excluant plage"