- Pour une durée de 24h maximum (heure de fin - Heure de début) comment
savoir combien de ces heures sont incluses dans un dimanche ?
Exemples :
Du Samedi 22h au Dimanche 08h00 -> 08 heures le dimanche
Du Dimanche 22h00 au Lundi 06h -> 02 heures le dimanche
Du dimance 14h00 au dimanche 22h00 -> 08h le dimanche
Du Lundi xxH au mardi xx heures ....0 heures le dimanche !!
Se sreait sympa une solution sans VBA mais bon., j'ai déjà planché de
nombreuses heures (le dimanche !!) sans trouver.
Merci beaucoup
---
avast! Antivirus: message Sortant propre.
Base de donnÚes des virus (VPS): 0524-6, 18/06/2005
Test du: 18/06/2005 16:10:14
avast! - copyright (c) 2000-2004 ALWIL Software.
http://www.avast.com
Cette action est irreversible, confirmez la suppression du commentaire ?
Signaler le commentaire
Veuillez sélectionner un problème
Nudité
Violence
Harcèlement
Fraude
Vente illégale
Discours haineux
Terrorisme
Autre
Pierre Fauconnier
Bonjour
Il y a probablement moyen de faire plus court :
Function Heures_Dimanche(Date_Debut As Date, Date_Fin As Date) Dim Heures As Date
' 4 cas peuvent se présenter ' Début et fin un dimanche ' Début ET fin pas un dimanche ' Début un dimanche ' Fin un dimanche
' Début et fin le dimanche, on calcule Fin - Debut If Weekday(Date_Debut, vbMonday) = 7 And Weekday(Date_Fin, vbMonday) = 7 Then Heures_Dimanche = Date_Fin - Date_Debut End If
' Début et fin pas un dimanche, donc 0 If Weekday(Date_Debut, vbMonday) <> 7 And Weekday(Date_Fin, vbMonday) <> 7 Then Heures_Dimanche = 0 End If
' Début un dimanche, on calcule jour suivant 0 heures - debut If Weekday(Date_Debut, vbMonday) = 7 And Weekday(Date_Fin, vbMonday) <> 7 Then Heures_Dimanche = Int(Date_Debut) + 1 - Date_Debut End If
' Fin un dimanche, on calcule fin - dimanche 0 heures If Weekday(Date_Debut, vbMonday) <> 7 And Weekday(Date_Fin, vbMonday) = 7 Then Heures_Dimanche = Date_Fin - Int(Date_Fin) End If End Function
Ok?
-- Pierre Fauconnier () "Le bonheur n'est pas au bout du chemin. Le bonheur EST le chemin ( proverbe zen ) Remplacez nospam.nospam par pfi.be pour répondre. Merci
"Pierre RIFFIOD" a écrit dans le message de news: 42b42b40$0$883$
Bonjour,
Voilà je sèche sur le problème suiavnt :
- Pour une durée de 24h maximum (heure de fin - Heure de début) comment savoir combien de ces heures sont incluses dans un dimanche ?
Exemples : Du Samedi 22h au Dimanche 08h00 -> 08 heures le dimanche Du Dimanche 22h00 au Lundi 06h -> 02 heures le dimanche Du dimance 14h00 au dimanche 22h00 -> 08h le dimanche Du Lundi xxH au mardi xx heures ....0 heures le dimanche !!
Se sreait sympa une solution sans VBA mais bon., j'ai déjà planché de nombreuses heures (le dimanche !!) sans trouver.
Merci beaucoup
--- avast! Antivirus: message Sortant propre. Base de donnÚes des virus (VPS): 0524-6, 18/06/2005 Test du: 18/06/2005 16:10:14 avast! - copyright (c) 2000-2004 ALWIL Software. http://www.avast.com
Bonjour
Il y a probablement moyen de faire plus court :
Function Heures_Dimanche(Date_Debut As Date, Date_Fin As Date)
Dim Heures As Date
' 4 cas peuvent se présenter
' Début et fin un dimanche
' Début ET fin pas un dimanche
' Début un dimanche
' Fin un dimanche
' Début et fin le dimanche, on calcule Fin - Debut
If Weekday(Date_Debut, vbMonday) = 7 And Weekday(Date_Fin, vbMonday) = 7
Then
Heures_Dimanche = Date_Fin - Date_Debut
End If
' Début et fin pas un dimanche, donc 0
If Weekday(Date_Debut, vbMonday) <> 7 And Weekday(Date_Fin, vbMonday) <>
7 Then
Heures_Dimanche = 0
End If
' Début un dimanche, on calcule jour suivant 0 heures - debut
If Weekday(Date_Debut, vbMonday) = 7 And Weekday(Date_Fin, vbMonday) <>
7 Then
Heures_Dimanche = Int(Date_Debut) + 1 - Date_Debut
End If
' Fin un dimanche, on calcule fin - dimanche 0 heures
If Weekday(Date_Debut, vbMonday) <> 7 And Weekday(Date_Fin, vbMonday) =
7 Then
Heures_Dimanche = Date_Fin - Int(Date_Fin)
End If
End Function
Ok?
--
Pierre Fauconnier (pierre.fauconnier@nospam.nospam)
"Le bonheur n'est pas au bout du chemin. Le bonheur EST le chemin ( proverbe
zen )
Remplacez nospam.nospam par pfi.be pour répondre. Merci
"Pierre RIFFIOD" <pierre.riffiod@wanadoo.fr> a écrit dans le message de
news: 42b42b40$0$883$8fcfb975@news.wanadoo.fr...
Bonjour,
Voilà je sèche sur le problème suiavnt :
- Pour une durée de 24h maximum (heure de fin - Heure de début) comment
savoir combien de ces heures sont incluses dans un dimanche ?
Exemples :
Du Samedi 22h au Dimanche 08h00 -> 08 heures le dimanche
Du Dimanche 22h00 au Lundi 06h -> 02 heures le dimanche
Du dimance 14h00 au dimanche 22h00 -> 08h le dimanche
Du Lundi xxH au mardi xx heures ....0 heures le dimanche !!
Se sreait sympa une solution sans VBA mais bon., j'ai déjà planché de
nombreuses heures (le dimanche !!) sans trouver.
Merci beaucoup
---
avast! Antivirus: message Sortant propre.
Base de donnÚes des virus (VPS): 0524-6, 18/06/2005
Test du: 18/06/2005 16:10:14
avast! - copyright (c) 2000-2004 ALWIL Software.
http://www.avast.com
Function Heures_Dimanche(Date_Debut As Date, Date_Fin As Date) Dim Heures As Date
' 4 cas peuvent se présenter ' Début et fin un dimanche ' Début ET fin pas un dimanche ' Début un dimanche ' Fin un dimanche
' Début et fin le dimanche, on calcule Fin - Debut If Weekday(Date_Debut, vbMonday) = 7 And Weekday(Date_Fin, vbMonday) = 7 Then Heures_Dimanche = Date_Fin - Date_Debut End If
' Début et fin pas un dimanche, donc 0 If Weekday(Date_Debut, vbMonday) <> 7 And Weekday(Date_Fin, vbMonday) <> 7 Then Heures_Dimanche = 0 End If
' Début un dimanche, on calcule jour suivant 0 heures - debut If Weekday(Date_Debut, vbMonday) = 7 And Weekday(Date_Fin, vbMonday) <> 7 Then Heures_Dimanche = Int(Date_Debut) + 1 - Date_Debut End If
' Fin un dimanche, on calcule fin - dimanche 0 heures If Weekday(Date_Debut, vbMonday) <> 7 And Weekday(Date_Fin, vbMonday) = 7 Then Heures_Dimanche = Date_Fin - Int(Date_Fin) End If End Function
Ok?
-- Pierre Fauconnier () "Le bonheur n'est pas au bout du chemin. Le bonheur EST le chemin ( proverbe zen ) Remplacez nospam.nospam par pfi.be pour répondre. Merci
"Pierre RIFFIOD" a écrit dans le message de news: 42b42b40$0$883$
Bonjour,
Voilà je sèche sur le problème suiavnt :
- Pour une durée de 24h maximum (heure de fin - Heure de début) comment savoir combien de ces heures sont incluses dans un dimanche ?
Exemples : Du Samedi 22h au Dimanche 08h00 -> 08 heures le dimanche Du Dimanche 22h00 au Lundi 06h -> 02 heures le dimanche Du dimance 14h00 au dimanche 22h00 -> 08h le dimanche Du Lundi xxH au mardi xx heures ....0 heures le dimanche !!
Se sreait sympa une solution sans VBA mais bon., j'ai déjà planché de nombreuses heures (le dimanche !!) sans trouver.
Merci beaucoup
--- avast! Antivirus: message Sortant propre. Base de donnÚes des virus (VPS): 0524-6, 18/06/2005 Test du: 18/06/2005 16:10:14 avast! - copyright (c) 2000-2004 ALWIL Software. http://www.avast.com
AV
Cellule d'accueil au format horaire :
Function HEUR_DIM(date_déb, date_fin) For i = date_déb To date_fin Step 1 / 1440 If Weekday(i) = 1 Then s = s + 1 Next HEUR_DIM = s / 1440 End Function
AV
Cellule d'accueil au format horaire :
Function HEUR_DIM(date_déb, date_fin)
For i = date_déb To date_fin Step 1 / 1440
If Weekday(i) = 1 Then s = s + 1
Next
HEUR_DIM = s / 1440
End Function
Function HEUR_DIM(date_déb, date_fin) For i = date_déb To date_fin Step 1 / 1440 If Weekday(i) = 1 Then s = s + 1 Next HEUR_DIM = s / 1440 End Function
en D1 =SI(ET(JOURSEM(A1)=1;JOURSEM(B1)=1);B1-A1;SI(JOURSEM(B1)=1;B1-C1;SI(JOURSEM( A1)=1;C1-A1;0)))
docm
"Pierre RIFFIOD" a écrit dans le message news: 42b42b40$0$883$
Bonjour,
Voilà je sèche sur le problème suiavnt :
- Pour une durée de 24h maximum (heure de fin - Heure de début) comment savoir combien de ces heures sont incluses dans un dimanche ?
Exemples : Du Samedi 22h au Dimanche 08h00 -> 08 heures le dimanche Du Dimanche 22h00 au Lundi 06h -> 02 heures le dimanche Du dimance 14h00 au dimanche 22h00 -> 08h le dimanche Du Lundi xxH au mardi xx heures ....0 heures le dimanche !!
Se sreait sympa une solution sans VBA mais bon., j'ai déjà planché de nombreuses heures (le dimanche !!) sans trouver.
Merci beaucoup
--- avast! Antivirus: message Sortant propre. Base de donnÚes des virus (VPS): 0524-6, 18/06/2005 Test du: 18/06/2005 16:10:14 avast! - copyright (c) 2000-2004 ALWIL Software. http://www.avast.com
en D1
=SI(ET(JOURSEM(A1)=1;JOURSEM(B1)=1);B1-A1;SI(JOURSEM(B1)=1;B1-C1;SI(JOURSEM(
A1)=1;C1-A1;0)))
docm
"Pierre RIFFIOD" <pierre.riffiod@wanadoo.fr> a écrit dans le message news:
42b42b40$0$883$8fcfb975@news.wanadoo.fr...
Bonjour,
Voilà je sèche sur le problème suiavnt :
- Pour une durée de 24h maximum (heure de fin - Heure de début) comment
savoir combien de ces heures sont incluses dans un dimanche ?
Exemples :
Du Samedi 22h au Dimanche 08h00 -> 08 heures le dimanche
Du Dimanche 22h00 au Lundi 06h -> 02 heures le dimanche
Du dimance 14h00 au dimanche 22h00 -> 08h le dimanche
Du Lundi xxH au mardi xx heures ....0 heures le dimanche !!
Se sreait sympa une solution sans VBA mais bon., j'ai déjà planché de
nombreuses heures (le dimanche !!) sans trouver.
Merci beaucoup
---
avast! Antivirus: message Sortant propre.
Base de donnÚes des virus (VPS): 0524-6, 18/06/2005
Test du: 18/06/2005 16:10:14
avast! - copyright (c) 2000-2004 ALWIL Software.
http://www.avast.com
en D1 =SI(ET(JOURSEM(A1)=1;JOURSEM(B1)=1);B1-A1;SI(JOURSEM(B1)=1;B1-C1;SI(JOURSEM( A1)=1;C1-A1;0)))
docm
"Pierre RIFFIOD" a écrit dans le message news: 42b42b40$0$883$
Bonjour,
Voilà je sèche sur le problème suiavnt :
- Pour une durée de 24h maximum (heure de fin - Heure de début) comment savoir combien de ces heures sont incluses dans un dimanche ?
Exemples : Du Samedi 22h au Dimanche 08h00 -> 08 heures le dimanche Du Dimanche 22h00 au Lundi 06h -> 02 heures le dimanche Du dimance 14h00 au dimanche 22h00 -> 08h le dimanche Du Lundi xxH au mardi xx heures ....0 heures le dimanche !!
Se sreait sympa une solution sans VBA mais bon., j'ai déjà planché de nombreuses heures (le dimanche !!) sans trouver.
Merci beaucoup
--- avast! Antivirus: message Sortant propre. Base de donnÚes des virus (VPS): 0524-6, 18/06/2005 Test du: 18/06/2005 16:10:14 avast! - copyright (c) 2000-2004 ALWIL Software. http://www.avast.com
Daniel.M
Salut,
Sans utiliser C1 (qui s'abbrévie par ENT(B1) si on en a besoin),
en D1 : =SI(ET(JOURSEM(A1)=1;JOURSEM(B1)=1);B1-A1;SI(JOURSEM(B1)=1;MOD(B1;1);MAX(0;ENT(B 1)-A1)))
En sachant que ça ne couvre que les cas où la différence d'heures entre B1 et A1 n'est JAMAIS supérieur à 1 jour (tel que mentionné dans le problème).
en D1 =SI(ET(JOURSEM(A1)=1;JOURSEM(B1)=1);B1-A1;SI(JOURSEM(B1)=1;B1-C1;SI(JOURSEM( A1)=1;C1-A1;0)))
docm
"Pierre RIFFIOD" a écrit dans le message news: 42b42b40$0$883$
Bonjour,
Voilà je sèche sur le problème suiavnt :
- Pour une durée de 24h maximum (heure de fin - Heure de début) comment savoir combien de ces heures sont incluses dans un dimanche ?
Exemples : Du Samedi 22h au Dimanche 08h00 -> 08 heures le dimanche Du Dimanche 22h00 au Lundi 06h -> 02 heures le dimanche Du dimance 14h00 au dimanche 22h00 -> 08h le dimanche Du Lundi xxH au mardi xx heures ....0 heures le dimanche !!
Se sreait sympa une solution sans VBA mais bon., j'ai déjà planché de nombreuses heures (le dimanche !!) sans trouver.
Merci beaucoup
--- avast! Antivirus: message Sortant propre. Base de donnÚes des virus (VPS): 0524-6, 18/06/2005 Test du: 18/06/2005 16:10:14 avast! - copyright (c) 2000-2004 ALWIL Software. http://www.avast.com
Salut,
Sans utiliser C1 (qui s'abbrévie par ENT(B1) si on en a besoin),
en D1 :
=SI(ET(JOURSEM(A1)=1;JOURSEM(B1)=1);B1-A1;SI(JOURSEM(B1)=1;MOD(B1;1);MAX(0;ENT(B
1)-A1)))
En sachant que ça ne couvre que les cas où la différence d'heures entre B1 et A1
n'est JAMAIS supérieur à 1 jour (tel que mentionné dans le problème).
Salutations,
Daniel M.
"docm" <docmarti@spamcolba.net> wrote in message
news:u3kp%23KCdFHA.3932@TK2MSFTNGP12.phx.gbl...
en D1
=SI(ET(JOURSEM(A1)=1;JOURSEM(B1)=1);B1-A1;SI(JOURSEM(B1)=1;B1-C1;SI(JOURSEM(
A1)=1;C1-A1;0)))
docm
"Pierre RIFFIOD" <pierre.riffiod@wanadoo.fr> a écrit dans le message news:
42b42b40$0$883$8fcfb975@news.wanadoo.fr...
Bonjour,
Voilà je sèche sur le problème suiavnt :
- Pour une durée de 24h maximum (heure de fin - Heure de début) comment
savoir combien de ces heures sont incluses dans un dimanche ?
Exemples :
Du Samedi 22h au Dimanche 08h00 -> 08 heures le dimanche
Du Dimanche 22h00 au Lundi 06h -> 02 heures le dimanche
Du dimance 14h00 au dimanche 22h00 -> 08h le dimanche
Du Lundi xxH au mardi xx heures ....0 heures le dimanche !!
Se sreait sympa une solution sans VBA mais bon., j'ai déjà planché de
nombreuses heures (le dimanche !!) sans trouver.
Merci beaucoup
---
avast! Antivirus: message Sortant propre.
Base de donnÚes des virus (VPS): 0524-6, 18/06/2005
Test du: 18/06/2005 16:10:14
avast! - copyright (c) 2000-2004 ALWIL Software.
http://www.avast.com
en D1 =SI(ET(JOURSEM(A1)=1;JOURSEM(B1)=1);B1-A1;SI(JOURSEM(B1)=1;B1-C1;SI(JOURSEM( A1)=1;C1-A1;0)))
docm
"Pierre RIFFIOD" a écrit dans le message news: 42b42b40$0$883$
Bonjour,
Voilà je sèche sur le problème suiavnt :
- Pour une durée de 24h maximum (heure de fin - Heure de début) comment savoir combien de ces heures sont incluses dans un dimanche ?
Exemples : Du Samedi 22h au Dimanche 08h00 -> 08 heures le dimanche Du Dimanche 22h00 au Lundi 06h -> 02 heures le dimanche Du dimance 14h00 au dimanche 22h00 -> 08h le dimanche Du Lundi xxH au mardi xx heures ....0 heures le dimanche !!
Se sreait sympa une solution sans VBA mais bon., j'ai déjà planché de nombreuses heures (le dimanche !!) sans trouver.
Merci beaucoup
--- avast! Antivirus: message Sortant propre. Base de donnÚes des virus (VPS): 0524-6, 18/06/2005 Test du: 18/06/2005 16:10:14 avast! - copyright (c) 2000-2004 ALWIL Software. http://www.avast.com
Daniel.M
Bonsoir Pierre,
1. Avec ton premier temps en A1 et ton deuxième en B1, la formule suivante te retourne le temps écoulé le dimanche (format [hh]:mm), même s'il y a plus de 24 heures (mais moins que 2 dimanches quand même) :
Elle est assez longue (rouillé!) mais s'exécute très rapidement étant donné les SI et MAX qu'elle comporte.
2. Pour une solution matricielle (à saisir avec Ctrl-Maj-Entrée), il y a la suivante, tout en sachant qu'elle bâtit une matrice avec une cardinalité égale au nombre de minutes entre les deux temps (A1 et B1), ce qui est non négligable en espace et en temps de calcul :
Function TempsLeDimanche(Temps1 As Double, Temps2 As Double) As Double
Dim T_1 As Double, T_2 As Double If Weekday(Temps2) = 1 Then ' si c'est un dimanche T_2 = Temps2 Else ' le lundi précédent/courant à 0:00 (ou dimanche minuit si on préfère) T_2 = Int(Temps2) - Weekday(Temps2 - 1) + 1 End If
If Weekday(Temps1) = 1 Then ' si c'est un dimanche T_1 = Temps1 Else ' le dimanche suivant à 0:00 T_1 = Int(Temps1) - Weekday(Temps1) + 8 End If
TempsLeDimanche = T_2 - T_1
If TempsLeDimanche < 0 Then TempsLeDimanche = 0 ' pas de résultat négatif
End Function
Salutations,
Daniel M.
"Pierre RIFFIOD" wrote in message news:42b42b40$0$883$
Bonjour,
Voilà je sèche sur le problème suiavnt :
- Pour une durée de 24h maximum (heure de fin - Heure de début) comment savoir combien de ces heures sont incluses dans un dimanche ?
Exemples : Du Samedi 22h au Dimanche 08h00 -> 08 heures le dimanche Du Dimanche 22h00 au Lundi 06h -> 02 heures le dimanche Du dimance 14h00 au dimanche 22h00 -> 08h le dimanche Du Lundi xxH au mardi xx heures ....0 heures le dimanche !!
Se sreait sympa une solution sans VBA mais bon., j'ai déjà planché de nombreuses heures (le dimanche !!) sans trouver.
Merci beaucoup
--- avast! Antivirus: message Sortant propre. Base de donnÚes des virus (VPS): 0524-6, 18/06/2005 Test du: 18/06/2005 16:10:14 avast! - copyright (c) 2000-2004 ALWIL Software. http://www.avast.com
Bonsoir Pierre,
1.
Avec ton premier temps en A1 et ton deuxième en B1, la formule suivante te
retourne le temps écoulé le dimanche (format [hh]:mm), même s'il y a plus de 24
heures (mais moins que 2 dimanches quand même) :
Elle est assez longue (rouillé!) mais s'exécute très rapidement étant donné les
SI et MAX qu'elle comporte.
2.
Pour une solution matricielle (à saisir avec Ctrl-Maj-Entrée), il y a la
suivante, tout en sachant qu'elle bâtit une matrice avec une cardinalité égale
au nombre de minutes entre les deux temps (A1 et B1), ce qui est non négligable
en espace et en temps de calcul :
Function TempsLeDimanche(Temps1 As Double, Temps2 As Double) As Double
Dim T_1 As Double, T_2 As Double
If Weekday(Temps2) = 1 Then ' si c'est un dimanche
T_2 = Temps2
Else
' le lundi précédent/courant à 0:00 (ou dimanche minuit si on préfère)
T_2 = Int(Temps2) - Weekday(Temps2 - 1) + 1
End If
If Weekday(Temps1) = 1 Then ' si c'est un dimanche
T_1 = Temps1
Else
' le dimanche suivant à 0:00
T_1 = Int(Temps1) - Weekday(Temps1) + 8
End If
TempsLeDimanche = T_2 - T_1
If TempsLeDimanche < 0 Then TempsLeDimanche = 0 ' pas de résultat négatif
End Function
Salutations,
Daniel M.
"Pierre RIFFIOD" <pierre.riffiod@wanadoo.fr> wrote in message
news:42b42b40$0$883$8fcfb975@news.wanadoo.fr...
Bonjour,
Voilà je sèche sur le problème suiavnt :
- Pour une durée de 24h maximum (heure de fin - Heure de début) comment
savoir combien de ces heures sont incluses dans un dimanche ?
Exemples :
Du Samedi 22h au Dimanche 08h00 -> 08 heures le dimanche
Du Dimanche 22h00 au Lundi 06h -> 02 heures le dimanche
Du dimance 14h00 au dimanche 22h00 -> 08h le dimanche
Du Lundi xxH au mardi xx heures ....0 heures le dimanche !!
Se sreait sympa une solution sans VBA mais bon., j'ai déjà planché de
nombreuses heures (le dimanche !!) sans trouver.
Merci beaucoup
---
avast! Antivirus: message Sortant propre.
Base de donnÚes des virus (VPS): 0524-6, 18/06/2005
Test du: 18/06/2005 16:10:14
avast! - copyright (c) 2000-2004 ALWIL Software.
http://www.avast.com
1. Avec ton premier temps en A1 et ton deuxième en B1, la formule suivante te retourne le temps écoulé le dimanche (format [hh]:mm), même s'il y a plus de 24 heures (mais moins que 2 dimanches quand même) :
Elle est assez longue (rouillé!) mais s'exécute très rapidement étant donné les SI et MAX qu'elle comporte.
2. Pour une solution matricielle (à saisir avec Ctrl-Maj-Entrée), il y a la suivante, tout en sachant qu'elle bâtit une matrice avec une cardinalité égale au nombre de minutes entre les deux temps (A1 et B1), ce qui est non négligable en espace et en temps de calcul :
Function TempsLeDimanche(Temps1 As Double, Temps2 As Double) As Double
Dim T_1 As Double, T_2 As Double If Weekday(Temps2) = 1 Then ' si c'est un dimanche T_2 = Temps2 Else ' le lundi précédent/courant à 0:00 (ou dimanche minuit si on préfère) T_2 = Int(Temps2) - Weekday(Temps2 - 1) + 1 End If
If Weekday(Temps1) = 1 Then ' si c'est un dimanche T_1 = Temps1 Else ' le dimanche suivant à 0:00 T_1 = Int(Temps1) - Weekday(Temps1) + 8 End If
TempsLeDimanche = T_2 - T_1
If TempsLeDimanche < 0 Then TempsLeDimanche = 0 ' pas de résultat négatif
End Function
Salutations,
Daniel M.
"Pierre RIFFIOD" wrote in message news:42b42b40$0$883$
Bonjour,
Voilà je sèche sur le problème suiavnt :
- Pour une durée de 24h maximum (heure de fin - Heure de début) comment savoir combien de ces heures sont incluses dans un dimanche ?
Exemples : Du Samedi 22h au Dimanche 08h00 -> 08 heures le dimanche Du Dimanche 22h00 au Lundi 06h -> 02 heures le dimanche Du dimance 14h00 au dimanche 22h00 -> 08h le dimanche Du Lundi xxH au mardi xx heures ....0 heures le dimanche !!
Se sreait sympa une solution sans VBA mais bon., j'ai déjà planché de nombreuses heures (le dimanche !!) sans trouver.
Merci beaucoup
--- avast! Antivirus: message Sortant propre. Base de donnÚes des virus (VPS): 0524-6, 18/06/2005 Test du: 18/06/2005 16:10:14 avast! - copyright (c) 2000-2004 ALWIL Software. http://www.avast.com
docm
Salut.
Sans utiliser C1 (qui s'abbrévie par ENT(B1) si on en a besoin),
Merci. Donc, cela devient =SI(ET(JOURSEM(A1)=1;JOURSEM(B1)=1);B1-A1;SI(JOURSEM(B1)=1;B1-ENT(B1);SI(JOU RSEM(A1)=1;ENT(B1)-A1;0)))
docm
"Daniel.M" a écrit dans le message news: O$
Salut,
Sans utiliser C1 (qui s'abbrévie par ENT(B1) si on en a besoin),
- Pour une durée de 24h maximum (heure de fin - Heure de début) comment
savoir combien de ces heures sont incluses dans un dimanche ?
Exemples : Du Samedi 22h au Dimanche 08h00 -> 08 heures le dimanche Du Dimanche 22h00 au Lundi 06h -> 02 heures le dimanche Du dimance 14h00 au dimanche 22h00 -> 08h le dimanche Du Lundi xxH au mardi xx heures ....0 heures le dimanche !!
Se sreait sympa une solution sans VBA mais bon., j'ai déjà planché de nombreuses heures (le dimanche !!) sans trouver.
Merci beaucoup
--- avast! Antivirus: message Sortant propre. Base de donnÚes des virus (VPS): 0524-6, 18/06/2005 Test du: 18/06/2005 16:10:14 avast! - copyright (c) 2000-2004 ALWIL Software. http://www.avast.com
Salut.
Sans utiliser C1 (qui s'abbrévie par ENT(B1) si on en a besoin),
Merci.
Donc, cela devient
=SI(ET(JOURSEM(A1)=1;JOURSEM(B1)=1);B1-A1;SI(JOURSEM(B1)=1;B1-ENT(B1);SI(JOU
RSEM(A1)=1;ENT(B1)-A1;0)))
docm
"Daniel.M" <prenom.maher@bigfoot.inutil.com> a écrit dans le message news:
O$fRwYGdFHA.464@TK2MSFTNGP15.phx.gbl...
Salut,
Sans utiliser C1 (qui s'abbrévie par ENT(B1) si on en a besoin),
"Pierre RIFFIOD" <pierre.riffiod@wanadoo.fr> a écrit dans le message
news:
42b42b40$0$883$8fcfb975@news.wanadoo.fr...
Bonjour,
Voilà je sèche sur le problème suiavnt :
- Pour une durée de 24h maximum (heure de fin - Heure de début)
comment
savoir combien de ces heures sont incluses dans un dimanche ?
Exemples :
Du Samedi 22h au Dimanche 08h00 -> 08 heures le dimanche
Du Dimanche 22h00 au Lundi 06h -> 02 heures le dimanche
Du dimance 14h00 au dimanche 22h00 -> 08h le dimanche
Du Lundi xxH au mardi xx heures ....0 heures le dimanche !!
Se sreait sympa une solution sans VBA mais bon., j'ai déjà planché de
nombreuses heures (le dimanche !!) sans trouver.
Merci beaucoup
---
avast! Antivirus: message Sortant propre.
Base de donnÚes des virus (VPS): 0524-6, 18/06/2005
Test du: 18/06/2005 16:10:14
avast! - copyright (c) 2000-2004 ALWIL Software.
http://www.avast.com
- Pour une durée de 24h maximum (heure de fin - Heure de début) comment
savoir combien de ces heures sont incluses dans un dimanche ?
Exemples : Du Samedi 22h au Dimanche 08h00 -> 08 heures le dimanche Du Dimanche 22h00 au Lundi 06h -> 02 heures le dimanche Du dimance 14h00 au dimanche 22h00 -> 08h le dimanche Du Lundi xxH au mardi xx heures ....0 heures le dimanche !!
Se sreait sympa une solution sans VBA mais bon., j'ai déjà planché de nombreuses heures (le dimanche !!) sans trouver.
Merci beaucoup
--- avast! Antivirus: message Sortant propre. Base de donnÚes des virus (VPS): 0524-6, 18/06/2005 Test du: 18/06/2005 16:10:14 avast! - copyright (c) 2000-2004 ALWIL Software. http://www.avast.com
AV
Salut Daniel,
Non mais...tu pensais quand même pas t'en sortir sans commentaires hein ? ;-) Bien que la question originelle ne le laisse pas penser mais ..... et comme tu le signales (faut quand même que je te rende d'abord justice !;-)) il y a des limitations aux solutions selon l'intervalle entre Date déb et Date fin
Solu 1 (non matricielle) : N'accepte pas 2 dimanches dans l'intervalle (tu l'as précisé !)
Solu 2 (matricielle) : Elle est limitée à un intervalle de 45jours 12h et 16mn entre Date déb et Date fin Explication pour les ceusses que ça intéresserait (?)... : la matricielle va échouer à cause de la partie ARRONDI((B1-A1)*1440;0) qui va renvoyer (pour la fonction INDIRECT) un nombre de lignes supérieur à celles possibles (65536) car (45(jours)*1440) + (12*60) + 16 = 65536 (la limite)
Solu 3 (fonction perso "TempsLeDimanche") : Elle échoue au-delà de 1 dimanche entre les bornes
Donc je reste "satisfait" de ma fonction perso à 2 sous avec son infâme bouclette (au demeurant assez rapide jusqu'à qques années d'intervalle) Evidemment tout ça n'est que pour le smilblick ! AV
Salut Daniel,
Non mais...tu pensais quand même pas t'en sortir sans commentaires hein ? ;-)
Bien que la question originelle ne le laisse pas penser mais ..... et comme tu
le signales (faut quand même que je te rende d'abord justice !;-)) il y a des
limitations aux solutions selon l'intervalle entre Date déb et Date fin
Solu 1 (non matricielle) :
N'accepte pas 2 dimanches dans l'intervalle (tu l'as précisé !)
Solu 2 (matricielle) :
Elle est limitée à un intervalle de 45jours 12h et 16mn entre Date déb et Date
fin
Explication pour les ceusses que ça intéresserait (?)... :
la matricielle va échouer à cause de la partie ARRONDI((B1-A1)*1440;0) qui va
renvoyer (pour la fonction INDIRECT) un nombre de lignes supérieur à celles
possibles (65536) car
(45(jours)*1440) + (12*60) + 16 = 65536 (la limite)
Solu 3 (fonction perso "TempsLeDimanche") :
Elle échoue au-delà de 1 dimanche entre les bornes
Donc je reste "satisfait" de ma fonction perso à 2 sous avec son infâme
bouclette
(au demeurant assez rapide jusqu'à qques années d'intervalle)
Evidemment tout ça n'est que pour le smilblick !
AV
Non mais...tu pensais quand même pas t'en sortir sans commentaires hein ? ;-) Bien que la question originelle ne le laisse pas penser mais ..... et comme tu le signales (faut quand même que je te rende d'abord justice !;-)) il y a des limitations aux solutions selon l'intervalle entre Date déb et Date fin
Solu 1 (non matricielle) : N'accepte pas 2 dimanches dans l'intervalle (tu l'as précisé !)
Solu 2 (matricielle) : Elle est limitée à un intervalle de 45jours 12h et 16mn entre Date déb et Date fin Explication pour les ceusses que ça intéresserait (?)... : la matricielle va échouer à cause de la partie ARRONDI((B1-A1)*1440;0) qui va renvoyer (pour la fonction INDIRECT) un nombre de lignes supérieur à celles possibles (65536) car (45(jours)*1440) + (12*60) + 16 = 65536 (la limite)
Solu 3 (fonction perso "TempsLeDimanche") : Elle échoue au-delà de 1 dimanche entre les bornes
Donc je reste "satisfait" de ma fonction perso à 2 sous avec son infâme bouclette (au demeurant assez rapide jusqu'à qques années d'intervalle) Evidemment tout ça n'est que pour le smilblick ! AV