XL 2016 Addition cellules au dessus d'une valeurs horaire

bigeart

XLDnaute Occasionnel
Supporter XLD
Re Bonjour à tous,

J'ai plusieurs cellules dans des colonnes E et H que j'ai mis en MFC
pour les faire ressortir avec une couleurs en fonction du critère
horaire. Là, pas de soucis.

Je souhaiterais additionner le nombre de ces cellules en fonction
de leurs plages temps.
Colonne E comprise entre 16 min et 30 min.
Colonne H comprise entre 31 min et sup.

Exemples:
La cellule E65 est comprise entre 16 min et 30 min
La cellule H65 est comprise entre 31 min et sup
donc cellule I65 = 0
donc cellule J65 = 2

La cellule E23 est comprise entre 16 min et 30 min
La cellule H23 est comprise entre 31 min et sup
donc cellule I23 =1
donc cellule J23 =1

En vous remerciant pour vos conseils

Cordialement

bigeart
 

Pièces jointes

  • Test cellules.xlsx
    19.4 KB · Affichages: 10

sylvanu

XLDnaute Barbatruc
Supporter XLD
Bonjour Bigeart,
Désolé. Vraiment rien compris aux calculs à mener.
Cependant quelques aides : =CNUM(DROITE(E23;8))
si E23=+ 00:35:00 alors le résultat sera en nombre et représente le temps en décimal.
Pour la division avec le temps alors il faut diviser par (N*60)/86400 avec N nombre de minutes.

Par ex E23=+ 00:35:00 alors =ENT(CNUM(DROITE(E23;8))/(30*60/86400)) donne 1.
( par contre pour J c'est faux, je n'ai pas compris ce qu'il fallait faire )
 

dg62

XLDnaute Barbatruc
Bonjour Bigeart, Sylvanu

Effectivement difficile à comprendre étant donné que l'explication et les résultats du tableau ne correspondent pas.
E65=1:31 donc n'est pas comprise entre 16 et 30
Faut-il lire n'est pas comprise ?
edit: les résultats en i et J sont ils réellement ceux attendus ? la logique est difficile à suivre.
Bonne fin de weekend
 
Dernière édition:

TooFatBoy

XLDnaute Barbatruc
Bonjour,

Je te propose ceci.

En colonne E : =SI(C6="";"";C6-D6)
En colonne H : =SI(F6="";"";F6-G6)
En colonne I : =SI(C6="";"";ET(ABS(E6)>(1/96);ABS(E6)<=(1/48))+ET(ABS(H6)>(1/96);ABS(H6)<=(1/48)))
En colonne J : =SI(C6="";"";(ABS(E6)>(1/48))+(ABS(H6)>(1/48)))

Avec :
- les colonnes E et H au format + [hh]:mm:ss;- [hh]:mm:ss
- les colonnes I et J au format standard
- le calendrier depuis 1904.


Et pour les MFC.
Pour le vert : en E6 mettre la MFC =ABS(E6)>(1/96) et l'appliquer à la plage $E$6:$E$94;$H$6:$H$94
Pour l'orange : en E6 mettre la MFC
=ABS(E6)>(1/48) et l'appliquer à la plage $E$6:$E$94;$H$6:$H$94
 
Dernière édition:

bigeart

XLDnaute Occasionnel
Supporter XLD
Bonjour Sylvanu, , dg62 et Marcel32,

Je suis désolé de ne pas avoir été assez précis, effectivement après relecture ce n'est pas évident.

La cellule I23 est la sommes des cellules E23 et H23 lorsque le temps est compris entre 16 et 30 min
Exemple
Si E23 est compris entre 16 et 30 min et si H23 est compris entre 16 entre 30 min
alors I23 est égal à 2

Autre exemple
Si E23 sup à 31 min et H23 sup à 31 min alors J23 est égal à 2.

Dans mon tableau nous avons
E23 est sup à 31 min et H23 est compris entre 16 min et 30 min

Donc I23 = 1 et J23 = 1

J'espère que cela est plus compréhensible

En vous remerciant
 

sylvanu

XLDnaute Barbatruc
Supporter XLD
Essayer en :

I16 : =SIERREUR(SI(ET(CNUM(DROITE(E16;8))>=15*60/86400;CNUM(DROITE(E16;8))<30*60/86400);1;0)+SI(ET(CNUM(DROITE(H16;8))>=15*60/86400;CNUM(DROITE(H16;8))<30*60/86400);1;0);"")

J16: =SIERREUR(SI(ET(CNUM(DROITE(E16;8))>=30*60/86400;CNUM(DROITE(E16;8))<60*60/86400);1;0)+SI(ET(CNUM(DROITE(H16;8))>=30*60/86400;CNUM(DROITE(H16;8))<60*60/86400);1);"")

Par contre en J65 vous trouvre 2 et moi 0. Les deux temps étant > 60 min, comment pouvez vous trouver 2?
Je pense que définitivement je n'ai rien compris.:mad:
 

sylvanu

XLDnaute Barbatruc
Supporter XLD
N'importe quoi. La cellule J5 est : Nb entre 31 et 60 min et non >31min :mad:

Donc en I16:
=SIERREUR(SI(ET(CNUM(DROITE(E16;8))>16*60/86400;CNUM(DROITE(E16;8))<=30*60/86400);1;0)+SI(ET(CNUM(DROITE(H16;8))>16*60/86400;CNUM(DROITE(H16;8))<=30*60/86400);1;0);"")

J16:
=SIERREUR(SI(ET(CNUM(DROITE(E17;8))>16*60/86400;CNUM(DROITE(E17;8))<=30*60/86400);1;0)+SI(ET(CNUM(DROITE(H17;8))>16*60/86400;CNUM(DROITE(H17;8))<=30*60/86400);1;0);"")

Tout est bon sauf en ligne 87 , les deux temps étant de 17 et 18 min, comment peux t-on trouver 1 et 1, moi je trouve 2 et 0?
 

TooFatBoy

XLDnaute Barbatruc
Certes, mais du coup tu es obligé d'utiliser des formules plutôt complexes, alors qu'en ne passant pas par des formats texte, les formules sont évidemment beaucoup plus simples puisqu'on travaille sur des nombres.

Et ces formules travaillant sur des nombres sont tout aussi fonctionnelles je pense. Non ?
 

Discussions similaires

Réponses
17
Affichages
1 K

Statistiques des forums

Discussions
311 720
Messages
2 081 920
Membres
101 840
dernier inscrit
SamynoT