Bonjour,
Etant donné que j'ai un peu galéré à sortir cette formule, je ne voulais pas quelle reste dans l'oubli, alors autant la partager.
Ce qu'on veut, c'est connaître le nombre d'heure entre deux dates.
ex: (au format hh:mm)
A2 : 30/10/2018 16h03
B2 : 07/11/2018 8h09
Réflexion : il faut définir 2 cas.
1-si l'écart de temps est sur la même journée, durée entre le début et la fin
2-si l'écart de temps est sur plus d'une journée,durée pour le 1er jour (section 2A)+ le nombre de jours complets (section 2B)+durée pour le dernier jour (section 2C)
Du coup, il faut connaître les horaires d'ouvertures, donc les renseigner dans des cellules cachés. (ici en format standard)
Z1: 8
(pour ouverture à 8h)
Z2: 17
(pour fermeture à 17h)
Z3: Z1+Z2
(pour le nombre d'heures ouvrés par jour)
Pour ne compter QUE les jours ouvrés, il existe une formule excel : NB.JOURS.OUVRES.INTL(A2,B2)
où A2 est la date de début et B2 la date de fin.
Section 2A:
((1/24*Z2)-(A2-ENT(A2))
((1/24*Z2) = horaire de fin de service (Z2) de service au format Heure (*1/24)
A2-ENT(A2) = (date heure - date) pour obtenir juste l'horaire de début d'action
donc
((1/24*Z2)-(A2-ENT(A2)) = heure de fin de service - heure de début d'action.
Section 2B :
NB.JOURS.OUVRES.INTL(A2;B2)-2)/24*Z3)
NB.JOURS.OUVRES.INTL(A2;B2) = le nombre de jours ouvrés entre les dates
-2 = pour ne pas prendre en compte le 1er et dernier jours qui sont tronqués
/24 =pour remettre en nombre d'heure et pas en nombre de jour
*Z3 = le nombre d'heure ouvrés par jour
NB.JOURS.OUVRES.INTL(A2;B2)-2)/24*Z3) = le nombre de jours où la plage est complete entre les dates
Section 2C :
(B2-ENT(B2))-(1/24*Z1))
(B2-ENT(B2) = (date heure - date) pour obtenir juste l'horaire de fin d'action
(1/24*Z1)=horaire de début de service (Z1) de service au format Heure (*1/24)
(B2-ENT(B2))-(1/24*Z1))= heure de fin d'action - heure d'ouverture de service
Section 3:
(1/24/60) =Les arrondis des différents calculs font perdre 1 minute, on la rajoute.
Donc on additionne le nombre d'heure travaillé sur le 1er jour + le dernier jour + les jours complets entre le 1er et dernier jour.
=(((1/24*Z1)-(A2-ENT(A2)))+(B2-ENT(B2))-(1/24*Z2))+(((NB.JOURS.OUVRES.INTL(A2;B2)-2)/24*Z3)+(1/24/60))
Aucun commentaire:
Enregistrer un commentaire