Calcul d'heures en fonction de conditions (fonction SI)

Bonjour, j'ai une formule pour calculer les heures d'une personne sur un mois... Dans ces horaires, il y a différentes anotations qui sont répertoriées pour différencier les jours pointés à 7h36 et les jours à 8h06...

Cette formule est très longue en raison des multiple conditions donc je dois séparer le mois en 6 parties (Du 1 au 5, du 6 au 10, ...) pour refaire une somme taotele des heures calculées dans une autre cellule...

Je me demandais si il était possible de simplifier la formule pour qu'elle calcule la somme des heures de travail en une fois avec toutes les conditions remplies...

Ma formule initiale pour 5 jours car plus, la formule est trop longue :

=SI(B2="C";"7:36";SI(B2="ent";"7:36";SI(B2="form";"7:36";SI(B2="mon";"7:36";SI(B2="jurbise";"7:36";SI(B2="HR";"7:36";SI(B2="R";"0:00";SI(B2="";"0:00";"08:06"))))))))+SI(C2="C";"7:36";SI(C2="ent";"7:36";SI(C2="form";"7:36";SI(C2="mon";"7:36";SI(C2="jurbise";"7:36";SI(C2="HR";"7:36";SI(C2="R";"0:00";SI(C2="";"0:00";"08:06"))))))))+SI(D2="C";"7:36";SI(D2="ent";"7:36";SI(D2="form";"7:36";SI(D2="mon";"7:36";SI(D2="jurbise";"7:36";SI(D2="HR";"7:36";SI(D2="R";"0:00";SI(D2="";"0:00";"08:06"))))))))+SI(E2="C";"7:36";SI(E2="ent";"7:36";SI(E2="form";"7:36";SI(E2="mon";"7:36";SI(E2="jurbise";"7:36";SI(E2="HR";"7:36";SI(E2="R";"0:00";SI(E2="";"0:00";"08:06"))))))))+SI(F2="C";"7:36";SI(F2="ent";"7:36";SI(F2="form";"7:36";SI(F2="mon";"7:36";SI(F2="jurbise";"7:36";SI(F2="HR";"7:36";SI(F2="R";"0:00";SI(F2="";"0:00";"08:06"))))))))

Je refais ensuite la même formule pour les jours suivants (par 5 toujours) et je regroupe tous les résultats d'heures en une seule cellule ensuite (fonction SOMME classique)

Je planchais vers une autre formule pour regrouper toutes les cellules à analyser... Voici ma formule mais elle ne fonctionne pas (#VALEUR) soit :

=SI((B2:AF2)="C";"7:36";SI((B2:AF2)="ent";"7:36";SI((B2:AF2)="form";"7:36";SI((B2:AF2)="mon";"7:36";SI((B2:AF2)="jurbise";"7:36";SI((B2:AF2)="HR";"7:36";SI((B2:AF2)="R";"0:00";SI((B2:AF2)="";"0:00";"08:06"))))))))

Pouvez m'aider ??

D'avance, je vous remercie.

Si vous avez besoin, je veux bien vous donner mon fichier excel car là je plane dans le vide...

Nico

Bonjour et bienvenue sur ce forum,

Mets ton fichier en ligne ce sera plus facile de t'aider

A te relire

Bonjour. Bienvenue sur le Forum

Si vous avez besoin, je veux bien vous donner mon fichier excel car là je plane dans le vide...

Bien sur que nous en avons besoin! Comment faire autrement?

Cordialement

Edit : Bonjour Dan

Re bonjour

En G2, tu devrais obtenir directement le total des heures de B2, C2, D2, E2, F2 avec une formule comme

=(NB.SI(B2:F2;"ent")+NB.SI(B2:F2;"Form")+NB.SI(B2:F2;"mon")+NB.SI(B2:F2;"jurbiste")+NB.SI(B2:F2;"HR")+NB.SI(B2:F2;"C"))*Temps1+(NB.VIDE(B2:F2)*Temps2)+(NB.SI(B2:F2;"")+NB.SI(B2:F2;"R")*TempsNul)

Cela aprés avoir nommé les 3 formules suivantes

=TEMPSVAL("07:36") nommée Temps1

=TEMPSVAL("08:06") nommée Temps2

=TEMPSVAL("00:00") nommée TempsNul

En mettant la colonne G au format personnalisé [h]:mm

Exemple dans le fichier

Cordialement

73classeur1.xls (17.00 Ko)

Voilà qui est fait, j'ai mis le fichier en ligne.

-- 01 Nov 2010, 14:19 --

Amadéus a écrit :

Re bonjour

En G2, tu devrais obtenir directement le total des heures de B2, C2, D2, E2, F2 avec une formule comme

=(NB.SI(B2:F2;"ent")+NB.SI(B2:F2;"Form")+NB.SI(B2:F2;"mon")+NB.SI(B2:F2;"jurbiste")+NB.SI(B2:F2;"HR")+NB.SI(B2:F2;"C"))*Temps1+(NB.VIDE(B2:F2)*Temps2)+(NB.SI(B2:F2;"")+NB.SI(B2:F2;"R")*TempsNul)

Cela aprés avoir nommé les 3 formules suivantes

=TEMPSVAL("07:36") nommée Temps1

=TEMPSVAL("08:06") nommée Temps2

=TEMPSVAL("00:00") nommée TempsNul

En mettant la colonne G au format personnalisé [h]:mm

Exemple dans le fichier

Cordialement

Je vais essayer ca et je dis quoi

Bonjour,

Tentative que je t'ai également proposé ailleurs en AJ3 :

=SOMMEPROD(((B3:F3="C")+(B3:F3="ent")+(B3:F3="form")+(B3:F3="mon")+(B3:F3="jurbise")+(B3:F3="HR"))*"7:36")+(5-SOMMEPROD(((B3:F3="C")+(B3:F3="ent")+(B3:F3="form")+(B3:F3="mon")+(B3:F3="jurbise")+(B3:F3="HR")+(B3:F3="R"))))*"8:06"

Essaye et dis-nous

@+

Re bonjour, j'ai testé les deux formules et celle qui se rapproche le plus du résultat (me manque 8h) est NB.SI

Pour SOMME.PROD, j'ai un probleme au résultat.

Par rapport au fichier que j'ai joint en ligne, j'ai placé la formule comme suit :

=(NB.SI(B3:AF3;"ent")+NB.SI(B3:AF3;"Form")+NB.SI(B3:AF3;"Mon")+NB.SI(B3:AF3;"jurbise")+NB.SI(B3:AF3;"HR")+NB.SI(B3:AF3;"")*"8:06"+NB.SI(B3:AF3;"C")*"7:36"+NB.SI(B3:AF3;"R")*"0:00"+NB.VIDE(B3:AF3)*"0:00")

Mais j'ai 8 heures de différences avec le résultat de ma formule initiale... beuh... je cherche encore mais c'est vrai que cela raccourcit terriblement la formule avec NB.SI

re,

Une adaptation de la formule proposée plus haut (qui était en fait destinée à la cellule AJ3)

En AJ6 :

=SOMMEPROD(((B3:AF3="C")+(B3:AF3="ent")+(B3:AF3="form")+(B3:AF3="mon")+(B3:AF3="jurbise")+(B3:AF3="HR"))*"7:36")+(31-SOMMEPROD(((B3:AF3="C")+(B3:AF3="ent")+(B3:AF3="form")+(B3:AF3="mon")+(B3:AF3="jurbise")+(B3:AF3="HR")+(B3:AF3="R"))))*"8:06"

Subsiste un écart de 6:30 avec le résultat que tu as calculé

@+

Je viens d'avoir un message avec une formule qui tombe juste... et qui rejoint ta formule de SOMME.PROD soit :

=(NB.SI($B$3:$AF$3;"c")+NB.SI($B$3:$AF$3;"ent")+NB.SI($B$3:$AF$3;"form")+NB.SI($B$3:$AF$3;"mon")+NB.SI($B$3:$AF$3;"jurbise")+NB.SI($B$3:$AF$3;"HR"))*"7:36"+SOMMEPROD(($B$3:$AF$3<>"c")*($B$3:$AF$3<>"ent")*($B$3:$AF$3<>"form")*($B$3:$AF$3<>"mon")*($B$3:$AF$3<>"jurbise")*($B$3:$AF$3<>"HR")*($B$3:$AF$3<>"r")*($B$3:$AF$3<>""))*"8:06"

Et là, le résultat est juste...

Je pense que la question est résolue, je vais la tester pour mes 20 gars et mes douze mois et voir si cela fonctionne pour tout.

Un tout grand merci pour votre aide en tout cas. Au plaisir

Rechercher des sujets similaires à "calcul heures fonction conditions"