Addition vers le haut ET vers le bas (sans VBA)
sjojo59
Messages postés
6
Statut
Membre
-
sjojo59 Messages postés 6 Statut Membre -
sjojo59 Messages postés 6 Statut Membre -
Bonjour,
voici l'exemple en image
https://www.developpez.net/forums/attachments/p116153/logiciels/microsoft-office/excel/somme-cellules-variables-vers-vers-bas-macro/excel-dl2.jpg/
Je voudrais donc calculer pour chaque trajet le nombre d'heure effectuées à partir de 22h jusque 6h. Puis entre chaque jour additionner ce qu'on a obtenu depuis 22h jusque 6h.
Dans l'expemple : en N3 on a 4:20 de travaillé dans le trajet de la ligne 3
En ligne 5 obtient en N 3:20 effectués jusque 6h
Dans la ligne 4 on est à cheval entre 2 jours donc on calcul vers le haut (depuis 22h) et vers le bas (jusque 6h) le travail de nuit. (le résultat est d'ailleurs 7:40 et non 6:20!)
Attention il peut y avoir 1 ou plusieurs lignes dans une journée!
j'avais trouvé cette formule (à mettre en N10)
=SOMME(INDIRECT("N"&EQUIV(B11-1;B$1:B11)):N9)+SOMME(INDIRECT("N"&EQUIV(B11+1;B:B)-2):N11)
mais ça additionne toute la journée du 3/04 et toute la journée du 4/04
Ce que je voudrais c'est additionner la journée du 3/04 QUE à partir de 22h jusque le 4/04 à 6h.
pour le calcul du trajet on a par exemple en N5 sachant que Y1="22:00" et AA1="6:00"
SI(OU(ET(M5<>"";M5<AA$1);ET(L5<>"";L5<AA$1);J5>=Y$1);T5;SI(ET(J5<>"";J5<AA$1);AA$1-J5;SI(ET(M5<>"";M5>Y$1);M5-Y$1;"")))
Cette formule me va donc inutile de s'attarder dessus!
J'espère avoir été assez clair. N'hésitez pas à me poser vos questions si besoin
Merci d'avance!
Jojo
voici l'exemple en image
https://www.developpez.net/forums/attachments/p116153/logiciels/microsoft-office/excel/somme-cellules-variables-vers-vers-bas-macro/excel-dl2.jpg/
Je voudrais donc calculer pour chaque trajet le nombre d'heure effectuées à partir de 22h jusque 6h. Puis entre chaque jour additionner ce qu'on a obtenu depuis 22h jusque 6h.
Dans l'expemple : en N3 on a 4:20 de travaillé dans le trajet de la ligne 3
En ligne 5 obtient en N 3:20 effectués jusque 6h
Dans la ligne 4 on est à cheval entre 2 jours donc on calcul vers le haut (depuis 22h) et vers le bas (jusque 6h) le travail de nuit. (le résultat est d'ailleurs 7:40 et non 6:20!)
Attention il peut y avoir 1 ou plusieurs lignes dans une journée!
j'avais trouvé cette formule (à mettre en N10)
=SOMME(INDIRECT("N"&EQUIV(B11-1;B$1:B11)):N9)+SOMME(INDIRECT("N"&EQUIV(B11+1;B:B)-2):N11)
mais ça additionne toute la journée du 3/04 et toute la journée du 4/04
Ce que je voudrais c'est additionner la journée du 3/04 QUE à partir de 22h jusque le 4/04 à 6h.
pour le calcul du trajet on a par exemple en N5 sachant que Y1="22:00" et AA1="6:00"
SI(OU(ET(M5<>"";M5<AA$1);ET(L5<>"";L5<AA$1);J5>=Y$1);T5;SI(ET(J5<>"";J5<AA$1);AA$1-J5;SI(ET(M5<>"";M5>Y$1);M5-Y$1;"")))
Cette formule me va donc inutile de s'attarder dessus!
J'espère avoir été assez clair. N'hésitez pas à me poser vos questions si besoin
Merci d'avance!
Jojo
A voir également:
- Addition vers le haut ET vers le bas (sans VBA)
- Windows 7 vers windows 10 - Accueil - Mise à jour
- Qwerty vers azerty - Guide
- Vers quelle adresse web renvoie ce lien - Guide
- Envoyer vers - Guide
- Votre envoi est en cours d'acheminement vers le site de distribution. - Forum Consommation & Internet
1 réponse
Je pense que je suis pas loin de la solution. Ça donne à peu près ça en N8 par exemple:
=SI(A8<>"";SOMMEPROD(((INDIRECT("J"&EQUIV(B9-1;B$1:B9)):J7)>22/24)*INDIRECT("N"&EQUIV(B9-1;B$1:B9)):N7)+SOMMEPROD((INDIRECT("J"&EQUIV(B9+1;B:B)-2):J9)<6/24)*INDIRECT("N"&EQUIV(B9+1;B:B)-2):N9);...
"..." veut dire que je connais la suite qui servira aux calculs par trajet (dans l'exemple, ça servira pour N3,N5,N6,N7,N9) donc inutile d'aller plus loin.
Je ne maitrise pas très bien SOMMEPROD mais ça me parait une très bonne fonction pour ce que je désire. Les "bouts" de formule "INDIRECT(...&€EQUIV(...):..." sont déja utilisés dans d'autres formules de mon tableau d'origine et fonctionne bien le problème c'est que je n'arrive pas à imbriquer ça avec le SOMMEPROD.
Quelqu'un pourrait essayer de corriger ?
Merci
=SI(A8<>"";SOMMEPROD(((INDIRECT("J"&EQUIV(B9-1;B$1:B9)):J7)>22/24)*INDIRECT("N"&EQUIV(B9-1;B$1:B9)):N7)+SOMMEPROD((INDIRECT("J"&EQUIV(B9+1;B:B)-2):J9)<6/24)*INDIRECT("N"&EQUIV(B9+1;B:B)-2):N9);...
"..." veut dire que je connais la suite qui servira aux calculs par trajet (dans l'exemple, ça servira pour N3,N5,N6,N7,N9) donc inutile d'aller plus loin.
Je ne maitrise pas très bien SOMMEPROD mais ça me parait une très bonne fonction pour ce que je désire. Les "bouts" de formule "INDIRECT(...&€EQUIV(...):..." sont déja utilisés dans d'autres formules de mon tableau d'origine et fonctionne bien le problème c'est que je n'arrive pas à imbriquer ça avec le SOMMEPROD.
Quelqu'un pourrait essayer de corriger ?
Merci