Bonjour, toutes et tous.
Je cherche à calculer le nombre d'heures de nuit (entre 21:00 et 6:00) pour
des positions de travail pouvant avoir 3 vacations par jour.
Par exemple : De 19:00 à 22:00, De 22:30 1:35, De 4:30 à 6:30 (les horaires
sont sur la même ligne, dans des colonnes adjacentes).
*Résultat attendu 5:35*
J'ai monté une usine à gaz avec 4 colonnes intermédiaires contenant des
formules avec des si, et, ou imbriqués. Ca marche, mais c'est lourd...
Si l'un d'entre vous pouvait m'aiguiller sur une solution plus légère (et
plus élégante), ma reconnaissance n'aurait d'égal que mon admiration.
;-))
A vous lire bientôt, j'espère,
--
Bien cordialement,
==================================== > P. Bastard.
Pour me contacter, remplacez "Chez" par @ dans l'adresse
Une foule de conseils utiles sur le site de Misange :
http://www.excelabo.net
Mais ça, j'ai pô trouvé.
Bonjour, toutes et tous.
Je cherche à calculer le nombre d'heures de nuit (entre 21:00 et 6:00) pour
des positions de travail pouvant avoir 3 vacations par jour.
Par exemple : De 19:00 à 22:00, De 22:30 1:35, De 4:30 à 6:30 (les horaires
sont sur la même ligne, dans des colonnes adjacentes).
*Résultat attendu 5:35*
J'ai monté une usine à gaz avec 4 colonnes intermédiaires contenant des
formules avec des si, et, ou imbriqués. Ca marche, mais c'est lourd...
Si l'un d'entre vous pouvait m'aiguiller sur une solution plus légère (et
plus élégante), ma reconnaissance n'aurait d'égal que mon admiration.
;-))
A vous lire bientôt, j'espère,
--
Bien cordialement,
==================================== > P. Bastard.
Pour me contacter, remplacez "Chez" par @ dans l'adresse
Une foule de conseils utiles sur le site de Misange :
http://www.excelabo.net
Mais ça, j'ai pô trouvé.
Bonjour, toutes et tous.
Je cherche à calculer le nombre d'heures de nuit (entre 21:00 et 6:00) pour
des positions de travail pouvant avoir 3 vacations par jour.
Par exemple : De 19:00 à 22:00, De 22:30 1:35, De 4:30 à 6:30 (les horaires
sont sur la même ligne, dans des colonnes adjacentes).
*Résultat attendu 5:35*
J'ai monté une usine à gaz avec 4 colonnes intermédiaires contenant des
formules avec des si, et, ou imbriqués. Ca marche, mais c'est lourd...
Si l'un d'entre vous pouvait m'aiguiller sur une solution plus légère (et
plus élégante), ma reconnaissance n'aurait d'égal que mon admiration.
;-))
A vous lire bientôt, j'espère,
--
Bien cordialement,
==================================== > P. Bastard.
Pour me contacter, remplacez "Chez" par @ dans l'adresse
Une foule de conseils utiles sur le site de Misange :
http://www.excelabo.net
Mais ça, j'ai pô trouvé.
Bonjour, toutes et tous.
Je cherche à calculer le nombre d'heures de nuit (entre 21:00 et 6:00) pour
des positions de travail pouvant avoir 3 vacations par jour.
Par exemple : De 19:00 à 22:00, De 22:30 1:35, De 4:30 à 6:30 (les horaires
sont sur la même ligne, dans des colonnes adjacentes).
*Résultat attendu 5:35*
J'ai monté une usine à gaz avec 4 colonnes intermédiaires contenant des
formules avec des si, et, ou imbriqués. Ca marche, mais c'est lourd...
Si l'un d'entre vous pouvait m'aiguiller sur une solution plus légère (et
plus élégante), ma reconnaissance n'aurait d'égal que mon admiration.
;-))
A vous lire bientôt, j'espère,
Bonjour, toutes et tous.
Je cherche à calculer le nombre d'heures de nuit (entre 21:00 et 6:00) pour
des positions de travail pouvant avoir 3 vacations par jour.
Par exemple : De 19:00 à 22:00, De 22:30 1:35, De 4:30 à 6:30 (les horaires
sont sur la même ligne, dans des colonnes adjacentes).
*Résultat attendu 5:35*
J'ai monté une usine à gaz avec 4 colonnes intermédiaires contenant des
formules avec des si, et, ou imbriqués. Ca marche, mais c'est lourd...
Si l'un d'entre vous pouvait m'aiguiller sur une solution plus légère (et
plus élégante), ma reconnaissance n'aurait d'égal que mon admiration.
;-))
A vous lire bientôt, j'espère,
Bonjour, toutes et tous.
Je cherche à calculer le nombre d'heures de nuit (entre 21:00 et 6:00) pour
des positions de travail pouvant avoir 3 vacations par jour.
Par exemple : De 19:00 à 22:00, De 22:30 1:35, De 4:30 à 6:30 (les horaires
sont sur la même ligne, dans des colonnes adjacentes).
*Résultat attendu 5:35*
J'ai monté une usine à gaz avec 4 colonnes intermédiaires contenant des
formules avec des si, et, ou imbriqués. Ca marche, mais c'est lourd...
Si l'un d'entre vous pouvait m'aiguiller sur une solution plus légère (et
plus élégante), ma reconnaissance n'aurait d'égal que mon admiration.
;-))
A vous lire bientôt, j'espère,
Bonjour, toutes et tous.
Je cherche à calculer le nombre d'heures de nuit (entre 21:00 et 6:00) pour
des positions de travail pouvant avoir 3 vacations par jour.
Par exemple : De 19:00 à 22:00, De 22:30 1:35, De 4:30 à 6:30 (les horaires
sont sur la même ligne, dans des colonnes adjacentes).
*Résultat attendu 5:35*
J'ai monté une usine à gaz avec 4 colonnes intermédiaires contenant des
formules avec des si, et, ou imbriqués. Ca marche, mais c'est lourd...
Si l'un d'entre vous pouvait m'aiguiller sur une solution plus légère (et
plus élégante), ma reconnaissance n'aurait d'égal que mon admiration.
;-))
A vous lire bientôt, j'espère,
Bonsoir Patrick,
Via une fonction perso :
Le principe est de décaler les heures de 12:00 et d'en faire la
soustraction (pour éviter un mod 1 dont je ne me sors pas).
Public Function hn(inp As Range)
Application.Volatile True
debut = "21:00": fin = "6:00"
debut = CDbl(TimeValue(debut)) + 0.5
debut = debut - Int(debut)
fin = CDbl(TimeValue(fin)) + 0.5
fin = fin - Int(fin)
hn = 0
For a = 1 To 5 Step 2
b = inp(a + 0) + 0.5:b = b - Int(b)
If b < debut Then b = debut
c = inp(a + 1) + 0.5:c = c - Int(c)
If c > fin Then c = fin
hn = hn + c - b
Next a
End Function
Usage :
En A1: 19:00
En B1: 22:00
En C1: 22:30
En D1: 01:35
En E1: 04:30
En F1: 06:30
En G1: =hn(A1:F1) à mettre au format hh:mm
@+
FxM
Bonjour, toutes et tous.
Je cherche à calculer le nombre d'heures de nuit (entre 21:00 et 6:00) pour
des positions de travail pouvant avoir 3 vacations par jour.
Par exemple : De 19:00 à 22:00, De 22:30 1:35, De 4:30 à 6:30 (les horaires
sont sur la même ligne, dans des colonnes adjacentes).
*Résultat attendu 5:35*
J'ai monté une usine à gaz avec 4 colonnes intermédiaires contenant des
formules avec des si, et, ou imbriqués. Ca marche, mais c'est lourd...
Si l'un d'entre vous pouvait m'aiguiller sur une solution plus légère (et
plus élégante), ma reconnaissance n'aurait d'égal que mon admiration.
;-))
A vous lire bientôt, j'espère,
Bonsoir Patrick,
Via une fonction perso :
Le principe est de décaler les heures de 12:00 et d'en faire la
soustraction (pour éviter un mod 1 dont je ne me sors pas).
Public Function hn(inp As Range)
Application.Volatile True
debut = "21:00": fin = "6:00"
debut = CDbl(TimeValue(debut)) + 0.5
debut = debut - Int(debut)
fin = CDbl(TimeValue(fin)) + 0.5
fin = fin - Int(fin)
hn = 0
For a = 1 To 5 Step 2
b = inp(a + 0) + 0.5:b = b - Int(b)
If b < debut Then b = debut
c = inp(a + 1) + 0.5:c = c - Int(c)
If c > fin Then c = fin
hn = hn + c - b
Next a
End Function
Usage :
En A1: 19:00
En B1: 22:00
En C1: 22:30
En D1: 01:35
En E1: 04:30
En F1: 06:30
En G1: =hn(A1:F1) à mettre au format hh:mm
@+
FxM
Bonjour, toutes et tous.
Je cherche à calculer le nombre d'heures de nuit (entre 21:00 et 6:00) pour
des positions de travail pouvant avoir 3 vacations par jour.
Par exemple : De 19:00 à 22:00, De 22:30 1:35, De 4:30 à 6:30 (les horaires
sont sur la même ligne, dans des colonnes adjacentes).
*Résultat attendu 5:35*
J'ai monté une usine à gaz avec 4 colonnes intermédiaires contenant des
formules avec des si, et, ou imbriqués. Ca marche, mais c'est lourd...
Si l'un d'entre vous pouvait m'aiguiller sur une solution plus légère (et
plus élégante), ma reconnaissance n'aurait d'égal que mon admiration.
;-))
A vous lire bientôt, j'espère,
Bonsoir Patrick,
Via une fonction perso :
Le principe est de décaler les heures de 12:00 et d'en faire la
soustraction (pour éviter un mod 1 dont je ne me sors pas).
Public Function hn(inp As Range)
Application.Volatile True
debut = "21:00": fin = "6:00"
debut = CDbl(TimeValue(debut)) + 0.5
debut = debut - Int(debut)
fin = CDbl(TimeValue(fin)) + 0.5
fin = fin - Int(fin)
hn = 0
For a = 1 To 5 Step 2
b = inp(a + 0) + 0.5:b = b - Int(b)
If b < debut Then b = debut
c = inp(a + 1) + 0.5:c = c - Int(c)
If c > fin Then c = fin
hn = hn + c - b
Next a
End Function
Usage :
En A1: 19:00
En B1: 22:00
En C1: 22:30
En D1: 01:35
En E1: 04:30
En F1: 06:30
En G1: =hn(A1:F1) à mettre au format hh:mm
@+
FxM
Je ne sais pas à quel point ta formule est compliquée.
En voici une qui n'est pas simple non plus. :-)
Avec
A1: 19:00
B1: 22:00
C1: 22:30
D1: 01:35
E1: 04:30
F1: 06:30
Haut: 21:00 ' dans une cellule nommée ou par un nom directement
Bas : 06:00 ' idem
=MAX(0;MIN(B1;Bas)-SI(B1>A1;A1;MIN(0;A1-Bas)))+MAX(0;1-MAX(Haut;A1)-SI(B1>A1
1;MIN(0;Haut-B1)))+
MAX(0;MIN(D1;Bas)-SI(D1>C1;C1;MIN(0;C1-Bas)))+MAX(0;1-MAX(Haut;C1)-SI(D1>C1;
;MIN(0;Haut-D1)))+
MAX(0;MIN(F1;Bas)-SI(F1>E1;E1;MIN(0;E1-Bas)))+MAX(0;1-MAX(Haut;E1)-SI(F1>E1;
;MIN(0;Haut-F1)))
Format: [h]:mm
Tu remarqueras que c'est la somme de 3 fois la même formule (1
fois/vacation).
Il y a probablement moyen de faire plus court mais j'ai pas trouvé et il
fait beau.
Si tu es patient, peut-être y arriverai-je (ou un/e autre)... :-)
*Je confirme, je suis patient. C'est un classeur que j'ai mis il y a quelque
Je ne sais pas à quel point ta formule est compliquée.
En voici une qui n'est pas simple non plus. :-)
Avec
A1: 19:00
B1: 22:00
C1: 22:30
D1: 01:35
E1: 04:30
F1: 06:30
Haut: 21:00 ' dans une cellule nommée ou par un nom directement
Bas : 06:00 ' idem
=MAX(0;MIN(B1;Bas)-SI(B1>A1;A1;MIN(0;A1-Bas)))+MAX(0;1-MAX(Haut;A1)-SI(B1>A1
1;MIN(0;Haut-B1)))+
MAX(0;MIN(D1;Bas)-SI(D1>C1;C1;MIN(0;C1-Bas)))+MAX(0;1-MAX(Haut;C1)-SI(D1>C1;
;MIN(0;Haut-D1)))+
MAX(0;MIN(F1;Bas)-SI(F1>E1;E1;MIN(0;E1-Bas)))+MAX(0;1-MAX(Haut;E1)-SI(F1>E1;
;MIN(0;Haut-F1)))
Format: [h]:mm
Tu remarqueras que c'est la somme de 3 fois la même formule (1
fois/vacation).
Il y a probablement moyen de faire plus court mais j'ai pas trouvé et il
fait beau.
Si tu es patient, peut-être y arriverai-je (ou un/e autre)... :-)
*Je confirme, je suis patient. C'est un classeur que j'ai mis il y a quelque
Je ne sais pas à quel point ta formule est compliquée.
En voici une qui n'est pas simple non plus. :-)
Avec
A1: 19:00
B1: 22:00
C1: 22:30
D1: 01:35
E1: 04:30
F1: 06:30
Haut: 21:00 ' dans une cellule nommée ou par un nom directement
Bas : 06:00 ' idem
=MAX(0;MIN(B1;Bas)-SI(B1>A1;A1;MIN(0;A1-Bas)))+MAX(0;1-MAX(Haut;A1)-SI(B1>A1
1;MIN(0;Haut-B1)))+
MAX(0;MIN(D1;Bas)-SI(D1>C1;C1;MIN(0;C1-Bas)))+MAX(0;1-MAX(Haut;C1)-SI(D1>C1;
;MIN(0;Haut-D1)))+
MAX(0;MIN(F1;Bas)-SI(F1>E1;E1;MIN(0;E1-Bas)))+MAX(0;1-MAX(Haut;E1)-SI(F1>E1;
;MIN(0;Haut-F1)))
Format: [h]:mm
Tu remarqueras que c'est la somme de 3 fois la même formule (1
fois/vacation).
Il y a probablement moyen de faire plus court mais j'ai pas trouvé et il
fait beau.
Si tu es patient, peut-être y arriverai-je (ou un/e autre)... :-)
*Je confirme, je suis patient. C'est un classeur que j'ai mis il y a quelque
Je ne sais pas à quel point ta formule est compliquée.
En voici une qui n'est pas simple non plus. :-)
Avec
A1: 19:00
B1: 22:00
C1: 22:30
D1: 01:35
E1: 04:30
F1: 06:30
Haut: 21:00 ' dans une cellule nommée ou par un nom directement
Bas : 06:00 ' idem
=MAX(0;MIN(B1;Bas)-SI(B1>A1;A1;MIN(0;A1-Bas)))+MAX(0;1-MAX(Haut;A1)-SI(B1>A
1;1-B
1;MIN(0;Haut-B1)))+
MAX(0;MIN(D1;Bas)-SI(D1>C1;C1;MIN(0;C1-Bas)))+MAX(0;1-MAX(Haut;C1)-SI(D1>C1
;1-D1
;MIN(0;Haut-D1)))+
MAX(0;MIN(F1;Bas)-SI(F1>E1;E1;MIN(0;E1-Bas)))+MAX(0;1-MAX(Haut;E1)-SI(F1>E1
;1-F1
;MIN(0;Haut-F1)))
Format: [h]:mm
Tu remarqueras que c'est la somme de 3 fois la même formule (1
fois/vacation).
Il y a probablement moyen de faire plus court mais j'ai pas trouvé et il
fait beau.
Si tu es patient, peut-être y arriverai-je (ou un/e autre)... :-)
*Je confirme, je suis patient*
Je ne sais pas à quel point ta formule est compliquée.
En voici une qui n'est pas simple non plus. :-)
Avec
A1: 19:00
B1: 22:00
C1: 22:30
D1: 01:35
E1: 04:30
F1: 06:30
Haut: 21:00 ' dans une cellule nommée ou par un nom directement
Bas : 06:00 ' idem
=MAX(0;MIN(B1;Bas)-SI(B1>A1;A1;MIN(0;A1-Bas)))+MAX(0;1-MAX(Haut;A1)-SI(B1>A
1;1-B
1;MIN(0;Haut-B1)))+
MAX(0;MIN(D1;Bas)-SI(D1>C1;C1;MIN(0;C1-Bas)))+MAX(0;1-MAX(Haut;C1)-SI(D1>C1
;1-D1
;MIN(0;Haut-D1)))+
MAX(0;MIN(F1;Bas)-SI(F1>E1;E1;MIN(0;E1-Bas)))+MAX(0;1-MAX(Haut;E1)-SI(F1>E1
;1-F1
;MIN(0;Haut-F1)))
Format: [h]:mm
Tu remarqueras que c'est la somme de 3 fois la même formule (1
fois/vacation).
Il y a probablement moyen de faire plus court mais j'ai pas trouvé et il
fait beau.
Si tu es patient, peut-être y arriverai-je (ou un/e autre)... :-)
*Je confirme, je suis patient*
Je ne sais pas à quel point ta formule est compliquée.
En voici une qui n'est pas simple non plus. :-)
Avec
A1: 19:00
B1: 22:00
C1: 22:30
D1: 01:35
E1: 04:30
F1: 06:30
Haut: 21:00 ' dans une cellule nommée ou par un nom directement
Bas : 06:00 ' idem
=MAX(0;MIN(B1;Bas)-SI(B1>A1;A1;MIN(0;A1-Bas)))+MAX(0;1-MAX(Haut;A1)-SI(B1>A
1;1-B
1;MIN(0;Haut-B1)))+
MAX(0;MIN(D1;Bas)-SI(D1>C1;C1;MIN(0;C1-Bas)))+MAX(0;1-MAX(Haut;C1)-SI(D1>C1
;1-D1
;MIN(0;Haut-D1)))+
MAX(0;MIN(F1;Bas)-SI(F1>E1;E1;MIN(0;E1-Bas)))+MAX(0;1-MAX(Haut;E1)-SI(F1>E1
;1-F1
;MIN(0;Haut-F1)))
Format: [h]:mm
Tu remarqueras que c'est la somme de 3 fois la même formule (1
fois/vacation).
Il y a probablement moyen de faire plus court mais j'ai pas trouvé et il
fait beau.
Si tu es patient, peut-être y arriverai-je (ou un/e autre)... :-)
*Je confirme, je suis patient*
Salut Fx,
Lorsque E1 commence à l'extérieur des heures, c'est problématique.
19:00 22:00 22:30 01:35 06:15 06:30
Comptabilise ce temps en moins dans le résultat final.
Salutations,
Daniel M.
Salut Fx,
Lorsque E1 commence à l'extérieur des heures, c'est problématique.
19:00 22:00 22:30 01:35 06:15 06:30
Comptabilise ce temps en moins dans le résultat final.
Salutations,
Daniel M.
Salut Fx,
Lorsque E1 commence à l'extérieur des heures, c'est problématique.
19:00 22:00 22:30 01:35 06:15 06:30
Comptabilise ce temps en moins dans le résultat final.
Salutations,
Daniel M.
A partir de la proposition de Daniel,
...
semble fonctionner pour calculer la part d'heures de nuit d'une vacation.
Encore merci.
Je suis bien entendu preneur au cas où vos productives méninges
accoucheraient d'une formule encore plus expurgée.
;-))
A partir de la proposition de Daniel,
...
semble fonctionner pour calculer la part d'heures de nuit d'une vacation.
Encore merci.
Je suis bien entendu preneur au cas où vos productives méninges
accoucheraient d'une formule encore plus expurgée.
;-))
A partir de la proposition de Daniel,
...
semble fonctionner pour calculer la part d'heures de nuit d'une vacation.
Encore merci.
Je suis bien entendu preneur au cas où vos productives méninges
accoucheraient d'une formule encore plus expurgée.
;-))
Bonjour, toutes et tous.
Je cherche à calculer le nombre d'heures de nuit (entre 21:00 et 6:00)
pour
des positions de travail pouvant avoir 3 vacations par jour.
Par exemple : De 19:00 à 22:00, De 22:30 1:35, De 4:30 à 6:30 (les
horaires
sont sur la même ligne, dans des colonnes adjacentes).
*Résultat attendu 5:35*
J'ai monté une usine à gaz avec 4 colonnes intermédiaires contenant des
formules avec des si, et, ou imbriqués. Ca marche, mais c'est lourd...
Si l'un d'entre vous pouvait m'aiguiller sur une solution plus légère
(et
plus élégante), ma reconnaissance n'aurait d'égal que mon admiration.
;-))
Bonjour, toutes et tous.
Je cherche à calculer le nombre d'heures de nuit (entre 21:00 et 6:00)
pour
des positions de travail pouvant avoir 3 vacations par jour.
Par exemple : De 19:00 à 22:00, De 22:30 1:35, De 4:30 à 6:30 (les
horaires
sont sur la même ligne, dans des colonnes adjacentes).
*Résultat attendu 5:35*
J'ai monté une usine à gaz avec 4 colonnes intermédiaires contenant des
formules avec des si, et, ou imbriqués. Ca marche, mais c'est lourd...
Si l'un d'entre vous pouvait m'aiguiller sur une solution plus légère
(et
plus élégante), ma reconnaissance n'aurait d'égal que mon admiration.
;-))
Bonjour, toutes et tous.
Je cherche à calculer le nombre d'heures de nuit (entre 21:00 et 6:00)
pour
des positions de travail pouvant avoir 3 vacations par jour.
Par exemple : De 19:00 à 22:00, De 22:30 1:35, De 4:30 à 6:30 (les
horaires
sont sur la même ligne, dans des colonnes adjacentes).
*Résultat attendu 5:35*
J'ai monté une usine à gaz avec 4 colonnes intermédiaires contenant des
formules avec des si, et, ou imbriqués. Ca marche, mais c'est lourd...
Si l'un d'entre vous pouvait m'aiguiller sur une solution plus légère
(et
plus élégante), ma reconnaissance n'aurait d'égal que mon admiration.
;-))