Ceci est une page optimisée pour les mobiles. Cliquez sur ce texte pour afficher la vraie page.

calcul jours ouvrés

J

jean

Guest
bonjour les amis du forum; je voudrais que les jours fériés nommés "joursfériés" soient déduits en plus des jeudi et vendredi dans le fichier joint dont la formule ( en B5) est trop complexe pour ma petite cervelle; si un ou une spécialiste peut m'aider pour améliorer un modeste prog. des jours ouvrés en cours de réalisation - grand merci - jean
 

Pièces jointes

  • JoursOuvres.xls
    14 KB · Affichages: 98
  • JoursOuvres.xls
    14 KB · Affichages: 99
  • JoursOuvres.xls
    14 KB · Affichages: 96
M

Monique

Guest
Bonjour,

Date de début en A1 Date de fin en A2

Insérer 1 colonne (entre A et B) qui pourra être masquée
En B1 =">="&TEXTE((A1);"jj/mm/aa")
En B2 =">="&TEXTE((A2);"jj/mm/aa")

Nombre de jours sauf le jeudi et le vendredi
=A2-A1+1-ENT((A2-MOD(A2-5;7)-A1+7)/7)-ENT((A2-MOD(A2-6;7)-A1+7)/7)

Nombre de fériés de la période
=(NB.SI(joursfériés;B1)-NB.SI(joursfériés;B2))
Mais cette formule enlève encore les jeudi et vendredi qui sont fériés

Le nombre de jeudi à rajouter
=SOMMEPROD(SI((JOURSEM(joursfériés)=5)*(joursfériés>=A1)*(joursfériés<=A2);1))
formule matricielle à valider par ctrl + maj + entrée

Le nombre de vendredi à rajouter
=SOMMEPROD(SI((JOURSEM(joursfériés)=6)*(joursfériés>=A1)*(joursfériés<=A2);1))
formule matricielle

On fait la somme de tout ça et ça donne :
=A2-A1+1-ENT((A2-MOD(A2-5;7)-A1+7)/7)-ENT((A2-MOD(A2-6;7)-A1+7)/7)-(NB.SI(joursfériés;B1)-NB.SI(joursfériés;B2))+SOMMEPROD(SI((JOURSEM(joursfériés)=5)*(joursfériés>=A1)*(joursfériés<=A2);1))+SOMMEPROD(SI((JOURSEM(joursfériés)=6)*(joursfériés>=A1)*(joursfériés<=A2);1))
formule matricielle

C'est une formule plutôt longue...
 

Pièces jointes

  • JoursOuvres.xls
    17 KB · Affichages: 80
  • JoursOuvres.xls
    17 KB · Affichages: 82
  • JoursOuvres.xls
    17 KB · Affichages: 92
M

Monique

Guest
Bonsoir,

Revu, corrigé, simplifié (?)
Pas besoin d'insérer une colonne.
Le total des jours fériés de la période peut s'écrire ainsi :
=(NB.SI(joursfériés;">="&A1)-NB.SI(joursfériés;">="&A2))
Mais la formule reste aussi longue.
 

Pièces jointes

  • JoursOuvres_Jean.xls
    16.5 KB · Affichages: 84
J

jean

Guest
bonjour monique, merci encore pour second fichier plus simple à exploiter;il y a un truc qui pose problème --->si je mets dans mon tableau jours fériés nommé "joursfériés" par exemple le 11 février et 12 février 2003 en jours fériés et que je mets en A1 : 01/02/2003 et en A2 : 13/02/2003 , la formule me compte bien 8 jours ouvrés car elle compte du 01 au 05/2 et le 8,9,10 février; elle ne compte pas le jeudi 6 et vendredi 7/2 ni les 11 et 12/2 (fériés) ni le 13/2 (jeudi); jusque là c ok; si je saisi du 01/2 au 12/2/03 par contre la formule me compte 9 jours ouvrés !! bizarre, bizarre; du 01 au 11 c pareil-->toujours 9 jours alors qu'il y a moins de jours !! merci de ton aide - jean
 
M

Monique

Guest
Bonjour,

L'erreur était dans cette partie :
=-(NB.SI(joursfériés;">="&A1)-NB.SI(joursfériés;">"&A2))
Il y avait le signe "moins" avant &A2 de cette façon :
=-(NB.SI(joursfériés;">="&A1)-NB.SI(joursfériés;">-"&A2))
Ci-joint le fichier avec la formule décomposée.
 

Pièces jointes

  • JoursOuvres_Jean_02.xls
    17 KB · Affichages: 90
J

jean

Guest
merci monique pour ton aide précieuse; je vais pouvoir simplifier mon petit prog en conséquence et tenter de comprendre cette formule très complexe;
bonne soirée et @+ - jean
 

Discussions similaires

Réponses
7
Affichages
941
Les cookies sont requis pour utiliser ce site. Vous devez les accepter pour continuer à utiliser le site. En savoir plus…