OVH Cloud OVH Cloud

Calcul horaire suivant periode de la journee

25 réponses
Avatar
LeSurCitaire
Bonjour a tous,

J'ai besoin de faire un tableau calculant le travail effectu=E9 suivant
la periode de la journee.

je m'explique si une intervention est faite entre 14 et 16h par exemple
cela doit decompter 2h mais si l'intervention a lieu entre 16 et 18H
alors cela doit etre compte 1h30 en effet entre 17 et 19h les heures ne
compte que 50%.

J'ai essaye de chercher sur Google mais je n'ai rien trouve alors si
quelqu'un a une piste je suis prenneur.

Merci d'avance

5 réponses

1 2 3
Avatar
SL
Pour le fun et avec une approche totalement différente :

=SOMMEPROD(1/((LIGNE(INDIRECT(A1*1440+1&":"&B1*1440))<*60)+(LIGNE(INDIRECT(A1*1440+1&":"&B1*1440))>17*60)))/1440

à condition que A1 (heuredébut) et B1 (heurefin) soit en minute (ie pas de
seconde)

on construit un vecteur qui commence à la ligne heuredébut+1 (exprimé en mn
depuis 00:00) et qui fini à la ligne heurefin.
Chaque ligne à un poids de 1 sauf entre 17h et 19h où le poids est de 0,5.

1440 est le nombre de mn dans un jour.

Cette approche n'est pas adaptée dans un cas comme celui là mais peut être
très utile pour des conditions du type :
la première demi-heure de chaque heure à un coef 1 et la seconde à un coef
0,5.

Stéphane

"SL" a écrit dans le message de news:

Ou plus court :
=(B1-A1)/2+(MIN(17/24;B1)-MIN(17/24;A1))/2+(MAX(19/24;B1)-MAX(19/24;A1))/2

on divise par 2 l'intervalle A1 B1
puis on ajoute une demi de la part avant 17h et une demi de celle après
19h

Stéphane

"SL" a écrit dans le message de news:

Bonsoir

toujours avec A1 heure de début et B1 heure de fin
coef 1 si < 17:00 puis 0,5 entre 17:00 et 19:00 et enfin 1 si >19:00

=MIN(17/24;B1)-MIN(17/24;A1)+MAX(19/24;B1)-MAX(19/24;A1)+(MIN(19/24;B1)-MIN(17/24;B1))/2-(MIN(19/24;A1)-MIN(17/24;A1))/2

Explications :
MIN(17/24;B1)-MIN(17/24;A1) part inférieure à 17:00
MAX(19/24;B1)-MAX(19/24;A1) part supérieure à 19:00
(MIN(19/24;B1)-MIN(17/24;B1))/2 demi-part entre 17:00 et l'heure de fin
-(MIN(19/24;A1)-MIN(17/24;A1))/2 on retire la demi-part entre l'heure de
début et 19:00

mon 17/24 est équivalent au --"17:" de ChrisV

Stéphane

"LeSurCitaire" a écrit dans le
message de news:
Bonjour ChrisV,

votre formule me va très bien avec un petit bemol
j'aimerai que qhand cela depasse 19h le quoeficien redevienne 1








Avatar
LeSurCitaire
Je suis confus, j'ai omis une donnees
mes donnees sont entrees comme ceci jj/mm/aa hh:mm
et votre formule la ne fonctionne pas.
en effet, ce classeur gere les heures d'interventions dans une caserne
de sapeurs pompiers et les interventions peuvent parfois depasser
minuit, je dois donc prendre en compte la date

Merci de votre comprehension
Avatar
SL
Bonsoir

pour des heures entre J 00:00 et J+1 17:00
=(B1-A1)/2+(MIN(17/24;B1-ENT(A1))-MIN(17/24;A1-ENT(A1)))/2+(MAX(19/24;B1-ENT(A1))-MAX(19/24;A1-ENT(A1)))/2

sinon entre J 00:00 et J + 45 12:16 ;-) 65535 minutes !!
=SOMMEPROD(1/((MOD(LIGNE(INDIRECT(ARRONDI((A1-ENT(A1))*1440+1;0)&":"&ARRONDI((B1-ENT(A1))*1440;0)));24*60)<*60)+(MOD(LIGNE(INDIRECT(ARRONDI((A1-ENT(A1))*1440+1;0)&":"&ARRONDI((B1-ENT(A1))*1440;0)));24*60)>17*60)))/1440
arrondi à la minute.

par exemple entre 21/10/05 00:00 et 21/11/05 00:00 résultat 713 heures
c'est bien égal à 31*23.

Stéphane

"LeSurCitaire" a écrit dans le message
de news:
Je suis confus, j'ai omis une donnees
mes donnees sont entrees comme ceci jj/mm/aa hh:mm
et votre formule la ne fonctionne pas.
en effet, ce classeur gere les heures d'interventions dans une caserne
de sapeurs pompiers et les interventions peuvent parfois depasser
minuit, je dois donc prendre en compte la date

Merci de votre comprehension



Avatar
Daniel.M
Je suis confus, j'ai omis une donnees
mes donnees sont entrees comme ceci jj/mm/aa hh:mm


Avec:
HBas : 17:00
HHaut: 19:00

±-A1-(MAX(HBas;MIN(HHaut;MOD(B1;1)))-MAX(HBas;
MIN(HHaut;MOD(A1;1)))-(HBas-HHaut)*(ENT(B1)-ENT(A1)))/2

Salutations,

Daniel M.

Avatar
LeSurCitaire
Super merci

Mais j'aurai encore besoin de vos lumieres, c'est à dire qu'un element
nouveau viens de mettre donnee par mes superieurs.

1) Il ne faut pas que le temps avant 16h ne soit comptabilise


2) Il me faut comptabiliser le temps comme la periode 17 a 19h mais
entre 12 et 14h
j'ai donc modifie votre formule comme ceci:

=SOMMEPROD(1/((MOD(LIGNE(INDIRECT(ARRONDI((A1-ENT(A1))*1440+1;0)&":"&ARRO NDI((B1-ENT(A1))*1440;0)));24*60)<*60)+(MOD(LIGNE(INDIRECT(ARRONDI((A1 -ENT(A1))*1440+1;0)&":"&ARRONDI((B1-ENT(A1))*1440;0)));24*60)>12*60)))/1440

Mais j'ai un peu le meme soucis que ma question 1, il ne faut pas
comptabiliser le temps avant 12h et apres 14h
1 2 3