Bonjour
Une possibilité en pièce jointe. J'espère que c'est bon. A toi de vérifier, Gilberto.
J'ai supprimé le test par rapport à H dans la colonne F.
La formule pour calculer les heures normales de jour dans J2 est de la forme
SOMMEPROD(
((B$11*24*60<périodeenminutes)*(périodeenminutes<=B$12*24*60)+((B$11+1)*24*60<périodeenminutes)) ---> ne garde que les minutes de jour entre le début du travail et la fin du travail
*((périodeenminutes<=((C2<B2)+C2)*24*60)+(((D2<B2)+D2)*24*60<périodeenminutes)) --> ne garde que les minutes avant et après la pause
*(périodeenminutes<=((((B2+B$13)>((C2<B2)+C2))*(((D2<B2)+D2)-((C2<B2)+C2))+(B2+B$13))*24*60)) -->ne garde que les minutes normales
)/60/24 --> ramène le total des minutes en durée Excel (1 = 1 jour, donc par 720/60/24 = 0,5 = 0,5 jour = 12:00)
Les formules dans les colonnes K, L et M sont construites avec la même méthode, en "jouant" sur les inégalités, les + et les *.
@ plus
P.S : La dernière partie sert à voir si début + nombre d'heures normales (B2+B13) tombe ou non après le début de la pause (qui commence à l'heure C2). Ce qu'on pourrait faire avec un test du style B2+B13 > C2 si ce n'est que cela ne fonctionnera pas si B2 est avant minuit, et C2 un peu après, par exemple avec 22:00 et 3:00. Dans ce dernier cas, il faut faire le test suivant B2+B13 > 1 + C2, écrit sous la forme ((B2+B13)>((C2<B2)+C2)).
Si ce test donne VRAI, il faut additionner la durée de la pause à B2+B13, avec D2 - C2 + B2+B13. Là aussi, si B2 est avant minuit, et D2 et/ou C2 sont un peu après minuit, il y aura un problème, et il faudra faire avec (((D2<B2)+D2)-((C2<B2)+C2))+(B2+B13).
Si ce test donne FAUX, il faudra faire avec B2 + B13 tout simplement.
Et l'on peut obtenir cela avec
(((B2+B13)>((C2<B2)+C2))*(((D2<B2)+D2)-((C2<B2)+C2))+(B2+B$13))
C'est long à cause des heures possibles après minuit.
P.S : Modifications du fichier le 28/05/2018 pour mieux prendre en compte les cas avec cellules vides