Fonction si
mantanos
Messages postés
2
Date d'inscription
Statut
Membre
Dernière intervention
-
Gyrus Messages postés 3334 Date d'inscription Statut Membre Dernière intervention -
Gyrus Messages postés 3334 Date d'inscription Statut Membre Dernière intervention -
Bonjour à tous,
Bon alors de base j'aime bien me prendre la tête sur excel, mais là je ne sais pas si j'ai une demande qui dépasse mes capacité ou bref...
Venons en au fait :
Ce que je voudrais trouver c'est un calcule d'heures de repas mais avec conditions:
En B5 j'ai l'heure de début de journée
Si cette heure dépasse 11:10 (en M9) alors il n'y a pas de pause repas. (bon jusqu'à la ça va)
par contre si l'heure de début est avant les 11:10 alors il doit y avoir 4 possibilités
1h de coupure = "IRU"
Entre 30 min et 1h = "IS"
Moins de 30 min = "IR"
Si il n'y a pas de coupure = "pas de coupure"
J'espère avoir été un peu claire.
Merci et bon courage
Bon alors de base j'aime bien me prendre la tête sur excel, mais là je ne sais pas si j'ai une demande qui dépasse mes capacité ou bref...
Venons en au fait :
Ce que je voudrais trouver c'est un calcule d'heures de repas mais avec conditions:
En B5 j'ai l'heure de début de journée
Si cette heure dépasse 11:10 (en M9) alors il n'y a pas de pause repas. (bon jusqu'à la ça va)
par contre si l'heure de début est avant les 11:10 alors il doit y avoir 4 possibilités
1h de coupure = "IRU"
Entre 30 min et 1h = "IS"
Moins de 30 min = "IR"
Si il n'y a pas de coupure = "pas de coupure"
J'espère avoir été un peu claire.
Merci et bon courage
A voir également:
- Fonction si
- Fonction si et - Guide
- Fonction miroir - Guide
- Fonction moyenne excel - Guide
- Fonction remplacer sur word - Guide
- Fonction somme excel - Guide
5 réponses
Bonjour
Comment dans le fichier est indiqué le temps de pause ? par une durée ? ou par une heure de début de pause et une heure de fin de pause ?
Le plus simple, comme d'habitude) poster un exemple de ton fichier sur cjoint.com, faire créer un lie, le copier et revenir l'indiquer ici
Cdlmnt
Via
Comment dans le fichier est indiqué le temps de pause ? par une durée ? ou par une heure de début de pause et une heure de fin de pause ?
Le plus simple, comme d'habitude) poster un exemple de ton fichier sur cjoint.com, faire créer un lie, le copier et revenir l'indiquer ici
Cdlmnt
Via
Bonjour,
En relisant la demande je pense avoir enfin compris,
le problème avec la conversion des heures en décimale ou la comparaison d'une durée en fonction d'un calcul, il reste souvent des décimales parasites qui fausse le résultat.
je te propose soit de créer dans une cellule hors champ cette formule exemple en F20
=TRONQUE(((HEURE(M9)-HEURE(B5))*60)+MINUTE(M9)-MINUTE(B5))
puis cette formule
=SI(B5="";"";SI(F20>=60;"IRU";SI(F20>=30;"IS";SI(F20>0;"IR";"pas de coupure"))))
il est possible de traiter le problème directement avec une formule type usine à gaz
=SI(B5="";"";SI(TRONQUE(((HEURE(M9)-HEURE(B5))*60)+MINUTE(M9)-MINUTE(B5))>=60;"IRU";SI(TRONQUE(((HEURE(M9)-HEURE(B5))*60)+MINUTE(M9)-MINUTE(B5))>=30;"IS";SI(TRONQUE(((HEURE(M9)-HEURE(B5))*60)+MINUTE(M9)-MINUTE(B5))>0;"IR";"pas de coupure"))))
En relisant la demande je pense avoir enfin compris,
le problème avec la conversion des heures en décimale ou la comparaison d'une durée en fonction d'un calcul, il reste souvent des décimales parasites qui fausse le résultat.
je te propose soit de créer dans une cellule hors champ cette formule exemple en F20
=TRONQUE(((HEURE(M9)-HEURE(B5))*60)+MINUTE(M9)-MINUTE(B5))
puis cette formule
=SI(B5="";"";SI(F20>=60;"IRU";SI(F20>=30;"IS";SI(F20>0;"IR";"pas de coupure"))))
il est possible de traiter le problème directement avec une formule type usine à gaz
=SI(B5="";"";SI(TRONQUE(((HEURE(M9)-HEURE(B5))*60)+MINUTE(M9)-MINUTE(B5))>=60;"IRU";SI(TRONQUE(((HEURE(M9)-HEURE(B5))*60)+MINUTE(M9)-MINUTE(B5))>=30;"IS";SI(TRONQUE(((HEURE(M9)-HEURE(B5))*60)+MINUTE(M9)-MINUTE(B5))>0;"IR";"pas de coupure"))))
Bonjour Mike-31,
En cas de coupure de gaz dans l'usine, on doit pouvoir utiliser :
=SI(M9-B5>=1/24;"IRU";SI(M9-B5>=1/48;"IS";SI(M9-B5>0;"IR";"pas de coupure")))
Qu'en penses-tu ?
A+
En cas de coupure de gaz dans l'usine, on doit pouvoir utiliser :
=SI(M9-B5>=1/24;"IRU";SI(M9-B5>=1/48;"IS";SI(M9-B5>0;"IR";"pas de coupure")))
Qu'en penses-tu ?
A+
Re,
Ah oui bien vu le 1/48, par contre si tu mets 10:10 en B5 cela fait bien 1 heure donc IRU et comme mes formules le résultat est erroné avec comme résultat IS due à ces décimales parasites qui s'affichent entre les dixièmes et treizième décimales, mais peut être le demandeur s'en accommodera.
problème de décimale soulevé de nombreuses fois comme dans ces deux discussions
https://forums.commentcamarche.net/forum/affich-32216517-decimales-capricieuses
https://forums.commentcamarche.net/forum/affich-30073783-erreur-de-calcul-dans-excel-a-la-13eme-decimale
cordialement
A+
Mike-31
Une période d'échec est un moment rêvé pour semer les graines du savoir.
Ah oui bien vu le 1/48, par contre si tu mets 10:10 en B5 cela fait bien 1 heure donc IRU et comme mes formules le résultat est erroné avec comme résultat IS due à ces décimales parasites qui s'affichent entre les dixièmes et treizième décimales, mais peut être le demandeur s'en accommodera.
problème de décimale soulevé de nombreuses fois comme dans ces deux discussions
https://forums.commentcamarche.net/forum/affich-32216517-decimales-capricieuses
https://forums.commentcamarche.net/forum/affich-30073783-erreur-de-calcul-dans-excel-a-la-13eme-decimale
cordialement
A+
Mike-31
Une période d'échec est un moment rêvé pour semer les graines du savoir.
Vous n’avez pas trouvé la réponse que vous recherchez ?
Posez votre question
Bonjour,
Si besoin, le problème de décimale peut être réglé avec un ARRONDI
=SI(ARRONDI(M9-B5;10)>=1/24;"IRU";SI(ARRONDI(M9-B5;10)>=1/48;"IS";SI(ARRONDI(M9-B5;10)>0;"IR";"pas de coupure")))
A+
Si besoin, le problème de décimale peut être réglé avec un ARRONDI
=SI(ARRONDI(M9-B5;10)>=1/24;"IRU";SI(ARRONDI(M9-B5;10)>=1/48;"IS";SI(ARRONDI(M9-B5;10)>0;"IR";"pas de coupure")))
A+
Non, l'arrondi est utilisé pour pallier le problème de calcul des nombres à virgule flottante.
Exemple :
Avec M9=11:10 et B5=10:10, on obtient M9-B5=01:00
Au format nombre à 16 décimales, cette valeur est 0,0416666666666666
Pour Excel, l'heure vaut 1/24 = 0,0416666666666667
Cet écart sur la seizième décimale est suffisant pour que l'égalité M9-M5 = 1h00 ne soit plus vérifiée.
Par contre, si on prend l'arrondi à la dixième décimale de ces deux valeurs, soit 0,0416666667, on obtient bien l'égalité M9-M5= 1h00
A+
Exemple :
Avec M9=11:10 et B5=10:10, on obtient M9-B5=01:00
Au format nombre à 16 décimales, cette valeur est 0,0416666666666666
Pour Excel, l'heure vaut 1/24 = 0,0416666666666667
Cet écart sur la seizième décimale est suffisant pour que l'égalité M9-M5 = 1h00 ne soit plus vérifiée.
Par contre, si on prend l'arrondi à la dixième décimale de ces deux valeurs, soit 0,0416666667, on obtient bien l'égalité M9-M5= 1h00
A+
Vu que c'est une version d'essai il n'est pas très propres ni bien présenté.
Bonne journée,
https://www.cjoint.com/c/EIllPOAq0d5