amplitude horaire - cellule unique

halecs93

XLDnaute Nouveau
Bonjour,

J'ai, pour l'exemple, la cellule en A1 qui contient ''7:30 - 9:00''. Est-il possible (sans bva ?) de calculer en A2 l'amplitude horaire, soit 1:30 ?

Grand grand merci.
 

ROGER2327

XLDnaute Barbatruc
Re : amplitude horaire - cellule unique

Bonjour halecs93, phlaurent55.


Code:
=SIERREUR(SUPPRESPACE(SUBSTITUE(DROITE(A1;NBCAR(A1)-CHERCHE("-";A1));"'";""))-SUBSTITUE(GAUCHE(A1;CHERCHE("-";A1)-1);"'";"");"")

Bonne journée.


ℝOGER2327
#8238


Dimanche 22 Pédale 143 (Saint Sengle, Déserteur - fête Suprême Seconde)
26 Ventôse An CCXXIV, 4,2799h - pissenlit
2016-W11-3T10:16:18Z
 

Fichiers joints

phlaurent55

Nous a quittés en 2020
Repose en paix
Re : amplitude horaire - cellule unique

Re,

ou cette formule plus complète qui tient compte du calcul d'heure de nuit 23:30 - 9:00

=SI(STXT(A2;TROUVE("-";A2)+2;999)*1>=GAUCHE(A2;TROUVE("-";A2)-1)*1;STXT(A2;TROUVE("-";A2)+2;999)*1-GAUCHE(A2;TROUVE("-";A2)-1)*1;1+STXT(A2;TROUVE("-";A2)+2;999)*1-GAUCHE(A2;TROUVE("-";A2)-1)*1)

à+
Philippe

Edit: Bonjour Roger
 
Dernière édition:

Modeste geedee

XLDnaute Barbatruc
Re : amplitude horaire - cellule unique

Bonsour® phlaurent
du fait de la présence d'un opérateur arithmétique entre les deux chaines (supposées numériques)
on peut réduire :
=STXT(A1;TROUVE("-";A1)+2;8) - GAUCHE(A1;TROUVE("-";A1)-1)
 

Modeste geedee

XLDnaute Barbatruc
Re : amplitude horaire - cellule unique

Bonsour®
toujours pour le fun ... :rolleyes:
-prise en compte heures de nuit
-variabilité de la présence d'espaces superfétatoires au début, au milieu (" - ") ou à la fin

=MOD(STXT(SUBSTITUE(A3;" ";"");TROUVE("-";SUBSTITUE(A3;" ";""))+1;8)-GAUCHE(SUBSTITUE(A3;" ";"");TROUVE("-";SUBSTITUE(A3;" ";""))-1);1)
 

halecs93

XLDnaute Nouveau
Re : amplitude horaire - cellule unique

Un bricolant un peu, j'ai complété la formule de la façon suivante :

=SIERREUR(MOD(STXT(SUBSTITUE(D4;" ";"");TROUVE("-";SUBSTITUE(D4;" ";""))+1;8)-GAUCHE(SUBSTITUE(D4;" ";"");TROUVE("-";SUBSTITUE(D4;" ";""))-1);1)+MOD(STXT(SUBSTITUE(M4;" ";"");TROUVE("-";SUBSTITUE(M4;" ";""))+1;8)-GAUCHE(SUBSTITUE(M4;" ";"");TROUVE("-";SUBSTITUE(M4;" ";""))-1);1)+MOD(STXT(SUBSTITUE(V4;" ";"");TROUVE("-";SUBSTITUE(V4;" ";""))+1;8)-GAUCHE(SUBSTITUE(V4;" ";"");TROUVE("-";SUBSTITUE(V4;" ";""))-1);1)+MOD(STXT(SUBSTITUE(AE4;" ";"");TROUVE("-";SUBSTITUE(AE4;" ";""))+1;8)-GAUCHE(SUBSTITUE(AE4;" ";"");TROUVE("-";SUBSTITUE(AE4;" ";""))-1);1)+MOD(STXT(SUBSTITUE(AN4;" ";"");TROUVE("-";SUBSTITUE(AN4;" ";""))+1;8)-GAUCHE(SUBSTITUE(AN4;" ";"");TROUVE("-";SUBSTITUE(AN4;" ";""))-1);1);"")


Cependant, si une cellule ne comporte pas d'indications horaires, le calcul est considéré comme erroné, renvoie une erreur et donc, une valeur nulle.

Est-il possible de passer outre les éventuelles cellules qui seraient vides afin de forcer le calcul ?

Merci
 

Modeste geedee

XLDnaute Barbatruc
Re : amplitude horaire - cellule unique

Bonsour®
modifier la formule de la façon suivante :

=SIERREUR(
MOD(STXT(SUBSTITUE(D4;" ";"");TROUVE("-";SUBSTITUE(D4;" ";""))+1;8)-GAUCHE(SUBSTITUE(D4;" ";"");TROUVE("-";SUBSTITUE(D4;" ";""))-1);1);0)
+SIERREUR(
MOD(STXT(SUBSTITUE(M4;" ";"");TROUVE("-";SUBSTITUE(M4;" ";""))+1;8)-GAUCHE(SUBSTITUE(M4;" ";"");TROUVE("-";SUBSTITUE(M4;" ";""))-1);1);0)
+SIERREUR(
MOD(STXT(SUBSTITUE(V4;" ";"");TROUVE("-";SUBSTITUE(V4;" ";""))+1;8)-GAUCHE(SUBSTITUE(V4;" ";"");TROUVE("-";SUBSTITUE(V4;" ";""))-1);1);0)
+SIERREUR(
MOD(STXT(SUBSTITUE(AE4;" ";"");TROUVE("-";SUBSTITUE(AE4;" ";""))+1;8)-GAUCHE(SUBSTITUE(AE4;" ";"");TROUVE("-";SUBSTITUE(AE4;" ";""))-1);1);0)
+SIERREUR(
MOD(STXT(SUBSTITUE(AN4;" ";"");TROUVE("-";SUBSTITUE(AN4;" ";""))+1;8)-GAUCHE(SUBSTITUE(AN4;" ";"");TROUVE("-";SUBSTITUE(AN4;" ";""))-1);1);"");0)
 

halecs93

XLDnaute Nouveau
Re : amplitude horaire - cellule unique

Merci.... mais cela m'indique une erreur dans la formule au moment de la valider.... no comprendo :(
 

halecs93

XLDnaute Nouveau
Re : amplitude horaire - cellule unique

J'airectifié de la façon suivante :

=SIERREUR(MOD(STXT(SUBSTITUE(D4;" ";"");TROUVE("-";SUBSTITUE(D4;" ";""))+1;8)-GAUCHE(SUBSTITUE(D4;" ";"");TROUVE("-";SUBSTITUE(D4;" ";""))-1);1);"0")+SIERREUR(MOD(STXT(SUBSTITUE(M4;" ";"");TROUVE("-";SUBSTITUE(M4;" ";""))+1;8)-GAUCHE(SUBSTITUE(M4;" ";"");TROUVE("-";SUBSTITUE(M4;" ";""))-1);1);"0")+SIERREUR(MOD(STXT(SUBSTITUE(V4;" ";"");TROUVE("-";SUBSTITUE(V4;" ";""))+1;8)-GAUCHE(SUBSTITUE(V4;" ";"");TROUVE("-";SUBSTITUE(V4;" ";""))-1);1);"0")+SIERREUR(MOD(STXT(SUBSTITUE(AE4;" ";"");TROUVE("-";SUBSTITUE(AE4;" ";""))+1;8)-GAUCHE(SUBSTITUE(AE4;" ";"");TROUVE("-";SUBSTITUE(AE4;" ";""))-1);1);"0")+SIERREUR(MOD(STXT(SUBSTITUE(AN4;" ";"");TROUVE("-";SUBSTITUE(AN4;" ";""))+1;8)-GAUCHE(SUBSTITUE(AN4;" ";"");TROUVE("-";SUBSTITUE(AN4;" ";""))-1);1);"0")

ça devrait le faire...à suivre
 

Modeste geedee

XLDnaute Barbatruc
Re : amplitude horaire - cellule unique

Bonsour®

ouppppssssss.....
l'erreur était là :
Capture.JPG
en trop presque à la fin :
;"")
avec mes excuses...

tu as au moins compris la logique de construction (que je n'ai pu tester faute de fichier adéquat)
la valeur d'erreur à retenir restera cependant logiquement : 0 au lieu de "0"
 

Fichiers joints

halecs93

XLDnaute Nouveau
Re : amplitude horaire - cellule unique

En effet...ce ;"") en trop...je ne l'avais pas repéré.

Merci beaucoup
 

Créez un compte ou connectez vous pour répondre

Vous devez être membre afin de pouvoir répondre ici

Créer un compte

Créez un compte Excel Downloads. C'est simple!

Connexion

Vous avez déjà un compte? Connectez vous ici.

Haut Bas