Bonsoir,
sans fichier et sans donner le résultat voulu sur votre exemple...
Pour votre exemple, essayez ceci : =sommeprod((O5:O26>0)*(O5:O26<=20))
où 5 et 26 correspondent aux numéro de ligne de feuille Excel 5=contremaitre et 26 = intérim, et O correspond à la lettre de la colonne de la feuille Excel, c'est à dire votre colonne 12 + les 3 à gauche du tableau.
La fonction sommeprod additionne les résultats des multiplications des matrices entres elles. Ici il n'y a qu'une matrice de O5 à O26, mais avec deux tests, et sous Excel un test "positif" = 1 et négatif = 0, donc la multiplication de ces deux tests donnera 0 si un des deux est faux et 1 si les deux sont positifs, ensuite sommeprod fait l'addition de ces 0 et 1, donc cela donnera le nombre de personne en pause, dans votre exemple cela donnera 2.
Maintenant si vous voulez calculer la somme de ces heures il suffit d'ajouter un "test" afin de prendre la valeur numérique de ces pause : =sommeprod((O5:O26>0)*(O5:O26<=20)*(O5:O26)). Ici le dernier O5:O26 vaudra la valeur de la cellule de chaque ligne de chaque test et si les deux premiers sont "vrai" alors on aura 1 * 8 heures par exemple = 8 puis sommeprod fera l'addition de tout ceci, dans votre exemple cela donnera 16.5.
Avec Somme.Si.Ens cela devrait pouvoir ce faire et je crois que c'est moins gourmand en ressource...
@ bientôt
LouReeD