bon appétit et bonne soirée
cordialement
isabelle a écrit :ok, je regarde ça demain matin, car là je suis attendu pour un souper
à l'extérieur,
isabelle
Pierre52 a écrit :oui pourquoi pas tant que son exécution est totalement transparente
merci beaucoup d'avance
isabelle a écrit :bonjour Pierre,
ok, je comprend mieux la disposition et la complexité de la donne,
je ne crois pas être capable de faire une solution sans macro,
est ce que cela te conviendrait avec une macro ?
isabelle
Pierre52 a écrit :merci à tous de vos réponses,
effectivement avec 0,5 cela fonctionne
mais ,je pense que je me suis mal exprimé
dans la colonne A j'ai la date de début des vacances en colonnes B
j'ai la date de fin des congés en colonnes C j'ai la formule qui
compte les jours ouvrés (=NB.JOURS.OUVRES(A3;B3;fériés))j'aurai
voulu en colonne D par exemple le nombre de RTT décomptés sachant que
- les 5 jours consécutifs du lundi au vendredi compte pour 1/2 RTT
sauf si il y a un jour férié dans ces jours(lundi,.., vendredi)
exemple: cette année vacances du 25 avril au 10 mai = 0 RTT alors
que,soyons fous, du 25 avril au 07 juin = 1 RTT ou bien du 25
avril au 17 mai= 1/2 RTT
si je ne suis pas clair dites moi je vous envoie un classeur
encore merci de votre aide
Philippe.R a écrit :Bonsoir,
Essayes,si je comprends bien, en remplaçant a1 par a3 et 0.5 par 0,5
bon appétit et bonne soirée
cordialement
isabelle a écrit :
ok, je regarde ça demain matin, car là je suis attendu pour un souper
à l'extérieur,
isabelle
Pierre52 a écrit :
oui pourquoi pas tant que son exécution est totalement transparente
merci beaucoup d'avance
isabelle a écrit :
bonjour Pierre,
ok, je comprend mieux la disposition et la complexité de la donne,
je ne crois pas être capable de faire une solution sans macro,
est ce que cela te conviendrait avec une macro ?
isabelle
Pierre52 a écrit :
merci à tous de vos réponses,
effectivement avec 0,5 cela fonctionne
mais ,je pense que je me suis mal exprimé
dans la colonne A j'ai la date de début des vacances en colonnes B
j'ai la date de fin des congés en colonnes C j'ai la formule qui
compte les jours ouvrés (=NB.JOURS.OUVRES(A3;B3;fériés))j'aurai
voulu en colonne D par exemple le nombre de RTT décomptés sachant que
- les 5 jours consécutifs du lundi au vendredi compte pour 1/2 RTT
sauf si il y a un jour férié dans ces jours(lundi,.., vendredi)
exemple: cette année vacances du 25 avril au 10 mai = 0 RTT alors
que,soyons fous, du 25 avril au 07 juin = 1 RTT ou bien du 25
avril au 17 mai= 1/2 RTT
si je ne suis pas clair dites moi je vous envoie un classeur
encore merci de votre aide
Philippe.R a écrit :
Bonsoir,
Essayes,si je comprends bien, en remplaçant a1 par a3 et 0.5 par 0,5
bon appétit et bonne soirée
cordialement
isabelle a écrit :ok, je regarde ça demain matin, car là je suis attendu pour un souper
à l'extérieur,
isabelle
Pierre52 a écrit :oui pourquoi pas tant que son exécution est totalement transparente
merci beaucoup d'avance
isabelle a écrit :bonjour Pierre,
ok, je comprend mieux la disposition et la complexité de la donne,
je ne crois pas être capable de faire une solution sans macro,
est ce que cela te conviendrait avec une macro ?
isabelle
Pierre52 a écrit :merci à tous de vos réponses,
effectivement avec 0,5 cela fonctionne
mais ,je pense que je me suis mal exprimé
dans la colonne A j'ai la date de début des vacances en colonnes B
j'ai la date de fin des congés en colonnes C j'ai la formule qui
compte les jours ouvrés (=NB.JOURS.OUVRES(A3;B3;fériés))j'aurai
voulu en colonne D par exemple le nombre de RTT décomptés sachant que
- les 5 jours consécutifs du lundi au vendredi compte pour 1/2 RTT
sauf si il y a un jour férié dans ces jours(lundi,.., vendredi)
exemple: cette année vacances du 25 avril au 10 mai = 0 RTT alors
que,soyons fous, du 25 avril au 07 juin = 1 RTT ou bien du 25
avril au 17 mai= 1/2 RTT
si je ne suis pas clair dites moi je vous envoie un classeur
encore merci de votre aide
Philippe.R a écrit :Bonsoir,
Essayes,si je comprends bien, en remplaçant a1 par a3 et 0.5 par 0,5
bonjour Pierre,
voilà après un excellent repas, ça va mieux,
Function rtt(début As Range, fin As Range) As Double
Application.Volatile
On Error Resume Next
For i = début To fin
If Application.Weekday(i, 2) < 6 Then
If IsError(Range("fériés").Find(What:=i).Row) Then a = a + 1
Else: a = 0
End If
If a = 5 Then rtt = rtt + 0.5: a = 0
Err.Clear
Next
End Function
isabelle
Pierre52 a écrit :bon appétit et bonne soirée
cordialement
isabelle a écrit :ok, je regarde ça demain matin, car là je suis attendu pour un
souper à l'extérieur,
isabelle
Pierre52 a écrit :oui pourquoi pas tant que son exécution est totalement transparente
merci beaucoup d'avance
isabelle a écrit :bonjour Pierre,
ok, je comprend mieux la disposition et la complexité de la donne,
je ne crois pas être capable de faire une solution sans macro,
est ce que cela te conviendrait avec une macro ?
isabelle
Pierre52 a écrit :merci à tous de vos réponses,
effectivement avec 0,5 cela fonctionne
mais ,je pense que je me suis mal exprimé
dans la colonne A j'ai la date de début des vacances en colonnes
B j'ai la date de fin des congés en colonnes C j'ai la formule
qui compte les jours ouvrés
(=NB.JOURS.OUVRES(A3;B3;fériés))j'aurai voulu en colonne D par
exemple le nombre de RTT décomptés sachant que
- les 5 jours consécutifs du lundi au vendredi compte pour 1/2
RTT sauf si il y a un jour férié dans ces jours(lundi,.., vendredi)
exemple: cette année vacances du 25 avril au 10 mai = 0 RTT alors
que,soyons fous, du 25 avril au 07 juin = 1 RTT ou bien du 25
avril au 17 mai= 1/2 RTT
si je ne suis pas clair dites moi je vous envoie un classeur
encore merci de votre aide
Philippe.R a écrit :Bonsoir,
Essayes,si je comprends bien, en remplaçant a1 par a3 et 0.5 par
0,5
bonjour Pierre,
voilà après un excellent repas, ça va mieux,
Function rtt(début As Range, fin As Range) As Double
Application.Volatile
On Error Resume Next
For i = début To fin
If Application.Weekday(i, 2) < 6 Then
If IsError(Range("fériés").Find(What:=i).Row) Then a = a + 1
Else: a = 0
End If
If a = 5 Then rtt = rtt + 0.5: a = 0
Err.Clear
Next
End Function
isabelle
Pierre52 a écrit :
bon appétit et bonne soirée
cordialement
isabelle a écrit :
ok, je regarde ça demain matin, car là je suis attendu pour un
souper à l'extérieur,
isabelle
Pierre52 a écrit :
oui pourquoi pas tant que son exécution est totalement transparente
merci beaucoup d'avance
isabelle a écrit :
bonjour Pierre,
ok, je comprend mieux la disposition et la complexité de la donne,
je ne crois pas être capable de faire une solution sans macro,
est ce que cela te conviendrait avec une macro ?
isabelle
Pierre52 a écrit :
merci à tous de vos réponses,
effectivement avec 0,5 cela fonctionne
mais ,je pense que je me suis mal exprimé
dans la colonne A j'ai la date de début des vacances en colonnes
B j'ai la date de fin des congés en colonnes C j'ai la formule
qui compte les jours ouvrés
(=NB.JOURS.OUVRES(A3;B3;fériés))j'aurai voulu en colonne D par
exemple le nombre de RTT décomptés sachant que
- les 5 jours consécutifs du lundi au vendredi compte pour 1/2
RTT sauf si il y a un jour férié dans ces jours(lundi,.., vendredi)
exemple: cette année vacances du 25 avril au 10 mai = 0 RTT alors
que,soyons fous, du 25 avril au 07 juin = 1 RTT ou bien du 25
avril au 17 mai= 1/2 RTT
si je ne suis pas clair dites moi je vous envoie un classeur
encore merci de votre aide
Philippe.R a écrit :
Bonsoir,
Essayes,si je comprends bien, en remplaçant a1 par a3 et 0.5 par
0,5
bonjour Pierre,
voilà après un excellent repas, ça va mieux,
Function rtt(début As Range, fin As Range) As Double
Application.Volatile
On Error Resume Next
For i = début To fin
If Application.Weekday(i, 2) < 6 Then
If IsError(Range("fériés").Find(What:=i).Row) Then a = a + 1
Else: a = 0
End If
If a = 5 Then rtt = rtt + 0.5: a = 0
Err.Clear
Next
End Function
isabelle
Pierre52 a écrit :bon appétit et bonne soirée
cordialement
isabelle a écrit :ok, je regarde ça demain matin, car là je suis attendu pour un
souper à l'extérieur,
isabelle
Pierre52 a écrit :oui pourquoi pas tant que son exécution est totalement transparente
merci beaucoup d'avance
isabelle a écrit :bonjour Pierre,
ok, je comprend mieux la disposition et la complexité de la donne,
je ne crois pas être capable de faire une solution sans macro,
est ce que cela te conviendrait avec une macro ?
isabelle
Pierre52 a écrit :merci à tous de vos réponses,
effectivement avec 0,5 cela fonctionne
mais ,je pense que je me suis mal exprimé
dans la colonne A j'ai la date de début des vacances en colonnes
B j'ai la date de fin des congés en colonnes C j'ai la formule
qui compte les jours ouvrés
(=NB.JOURS.OUVRES(A3;B3;fériés))j'aurai voulu en colonne D par
exemple le nombre de RTT décomptés sachant que
- les 5 jours consécutifs du lundi au vendredi compte pour 1/2
RTT sauf si il y a un jour férié dans ces jours(lundi,.., vendredi)
exemple: cette année vacances du 25 avril au 10 mai = 0 RTT alors
que,soyons fous, du 25 avril au 07 juin = 1 RTT ou bien du 25
avril au 17 mai= 1/2 RTT
si je ne suis pas clair dites moi je vous envoie un classeur
encore merci de votre aide
Philippe.R a écrit :Bonsoir,
Essayes,si je comprends bien, en remplaçant a1 par a3 et 0.5 par
0,5
j'avais mis cela trop compliqué pour rien,
voici la correction :
Function rtt(début As Range, fin As Range) As Double
For i = début To fin
If Application.Weekday(i, 2) < 6 Then
If IsError(Application.Match(CLng(i), Range("fériés"), 0)) Then a = a + 1
Else
a = 0
End If
If a = 5 Then rtt = rtt + 0.5: a = 0
Next
End Function
isabelle
isabelle a écrit :bonjour Pierre,
voilà après un excellent repas, ça va mieux,
Function rtt(début As Range, fin As Range) As Double
Application.Volatile
On Error Resume Next
For i = début To fin
If Application.Weekday(i, 2) < 6 Then
If IsError(Range("fériés").Find(What:=i).Row) Then a = a + 1
Else: a = 0
End If
If a = 5 Then rtt = rtt + 0.5: a = 0
Err.Clear
Next
End Function
isabelle
Pierre52 a écrit :bon appétit et bonne soirée
cordialement
isabelle a écrit :ok, je regarde ça demain matin, car là je suis attendu pour un
souper à l'extérieur,
isabelle
Pierre52 a écrit :oui pourquoi pas tant que son exécution est totalement transparente
merci beaucoup d'avance
isabelle a écrit :bonjour Pierre,
ok, je comprend mieux la disposition et la complexité de la donne,
je ne crois pas être capable de faire une solution sans macro,
est ce que cela te conviendrait avec une macro ?
isabelle
Pierre52 a écrit :merci à tous de vos réponses,
effectivement avec 0,5 cela fonctionne
mais ,je pense que je me suis mal exprimé
dans la colonne A j'ai la date de début des vacances en colonnes
B j'ai la date de fin des congés en colonnes C j'ai la formule
qui compte les jours ouvrés
(=NB.JOURS.OUVRES(A3;B3;fériés))j'aurai voulu en colonne D par
exemple le nombre de RTT décomptés sachant que
- les 5 jours consécutifs du lundi au vendredi compte pour 1/2
RTT sauf si il y a un jour férié dans ces jours(lundi,.., vendredi)
exemple: cette année vacances du 25 avril au 10 mai = 0 RTT alors
que,soyons fous, du 25 avril au 07 juin = 1 RTT ou bien du 25
avril au 17 mai= 1/2 RTT
si je ne suis pas clair dites moi je vous envoie un classeur
encore merci de votre aide
Philippe.R a écrit :Bonsoir,
Essayes,si je comprends bien, en remplaçant a1 par a3 et 0.5 par
0,5
j'avais mis cela trop compliqué pour rien,
voici la correction :
Function rtt(début As Range, fin As Range) As Double
For i = début To fin
If Application.Weekday(i, 2) < 6 Then
If IsError(Application.Match(CLng(i), Range("fériés"), 0)) Then a = a + 1
Else
a = 0
End If
If a = 5 Then rtt = rtt + 0.5: a = 0
Next
End Function
isabelle
isabelle a écrit :
bonjour Pierre,
voilà après un excellent repas, ça va mieux,
Function rtt(début As Range, fin As Range) As Double
Application.Volatile
On Error Resume Next
For i = début To fin
If Application.Weekday(i, 2) < 6 Then
If IsError(Range("fériés").Find(What:=i).Row) Then a = a + 1
Else: a = 0
End If
If a = 5 Then rtt = rtt + 0.5: a = 0
Err.Clear
Next
End Function
isabelle
Pierre52 a écrit :
bon appétit et bonne soirée
cordialement
isabelle a écrit :
ok, je regarde ça demain matin, car là je suis attendu pour un
souper à l'extérieur,
isabelle
Pierre52 a écrit :
oui pourquoi pas tant que son exécution est totalement transparente
merci beaucoup d'avance
isabelle a écrit :
bonjour Pierre,
ok, je comprend mieux la disposition et la complexité de la donne,
je ne crois pas être capable de faire une solution sans macro,
est ce que cela te conviendrait avec une macro ?
isabelle
Pierre52 a écrit :
merci à tous de vos réponses,
effectivement avec 0,5 cela fonctionne
mais ,je pense que je me suis mal exprimé
dans la colonne A j'ai la date de début des vacances en colonnes
B j'ai la date de fin des congés en colonnes C j'ai la formule
qui compte les jours ouvrés
(=NB.JOURS.OUVRES(A3;B3;fériés))j'aurai voulu en colonne D par
exemple le nombre de RTT décomptés sachant que
- les 5 jours consécutifs du lundi au vendredi compte pour 1/2
RTT sauf si il y a un jour férié dans ces jours(lundi,.., vendredi)
exemple: cette année vacances du 25 avril au 10 mai = 0 RTT alors
que,soyons fous, du 25 avril au 07 juin = 1 RTT ou bien du 25
avril au 17 mai= 1/2 RTT
si je ne suis pas clair dites moi je vous envoie un classeur
encore merci de votre aide
Philippe.R a écrit :
Bonsoir,
Essayes,si je comprends bien, en remplaçant a1 par a3 et 0.5 par
0,5
j'avais mis cela trop compliqué pour rien,
voici la correction :
Function rtt(début As Range, fin As Range) As Double
For i = début To fin
If Application.Weekday(i, 2) < 6 Then
If IsError(Application.Match(CLng(i), Range("fériés"), 0)) Then a = a + 1
Else
a = 0
End If
If a = 5 Then rtt = rtt + 0.5: a = 0
Next
End Function
isabelle
isabelle a écrit :bonjour Pierre,
voilà après un excellent repas, ça va mieux,
Function rtt(début As Range, fin As Range) As Double
Application.Volatile
On Error Resume Next
For i = début To fin
If Application.Weekday(i, 2) < 6 Then
If IsError(Range("fériés").Find(What:=i).Row) Then a = a + 1
Else: a = 0
End If
If a = 5 Then rtt = rtt + 0.5: a = 0
Err.Clear
Next
End Function
isabelle
Pierre52 a écrit :bon appétit et bonne soirée
cordialement
isabelle a écrit :ok, je regarde ça demain matin, car là je suis attendu pour un
souper à l'extérieur,
isabelle
Pierre52 a écrit :oui pourquoi pas tant que son exécution est totalement transparente
merci beaucoup d'avance
isabelle a écrit :bonjour Pierre,
ok, je comprend mieux la disposition et la complexité de la donne,
je ne crois pas être capable de faire une solution sans macro,
est ce que cela te conviendrait avec une macro ?
isabelle
Pierre52 a écrit :merci à tous de vos réponses,
effectivement avec 0,5 cela fonctionne
mais ,je pense que je me suis mal exprimé
dans la colonne A j'ai la date de début des vacances en colonnes
B j'ai la date de fin des congés en colonnes C j'ai la formule
qui compte les jours ouvrés
(=NB.JOURS.OUVRES(A3;B3;fériés))j'aurai voulu en colonne D par
exemple le nombre de RTT décomptés sachant que
- les 5 jours consécutifs du lundi au vendredi compte pour 1/2
RTT sauf si il y a un jour férié dans ces jours(lundi,.., vendredi)
exemple: cette année vacances du 25 avril au 10 mai = 0 RTT alors
que,soyons fous, du 25 avril au 07 juin = 1 RTT ou bien du 25
avril au 17 mai= 1/2 RTT
si je ne suis pas clair dites moi je vous envoie un classeur
encore merci de votre aide
Philippe.R a écrit :Bonsoir,
Essayes,si je comprends bien, en remplaçant a1 par a3 et 0.5 par
0,5
merci beaucoup de ta part
comment je me sert de cette fonction et surtout où faut il que je
l'enregistre
merci d'avance de ta patience
isabelle a écrit :j'avais mis cela trop compliqué pour rien,
voici la correction :
Function rtt(début As Range, fin As Range) As Double
For i = début To fin
If Application.Weekday(i, 2) < 6 Then
If IsError(Application.Match(CLng(i), Range("fériés"), 0)) Then a =
a + 1
Else
a = 0
End If
If a = 5 Then rtt = rtt + 0.5: a = 0
Next
End Function
isabelle
isabelle a écrit :bonjour Pierre,
voilà après un excellent repas, ça va mieux,
Function rtt(début As Range, fin As Range) As Double
Application.Volatile
On Error Resume Next
For i = début To fin
If Application.Weekday(i, 2) < 6 Then
If IsError(Range("fériés").Find(What:=i).Row) Then a = a + 1
Else: a = 0
End If
If a = 5 Then rtt = rtt + 0.5: a = 0
Err.Clear
Next
End Function
isabelle
Pierre52 a écrit :bon appétit et bonne soirée
cordialement
isabelle a écrit :ok, je regarde ça demain matin, car là je suis attendu pour un
souper à l'extérieur,
isabelle
Pierre52 a écrit :oui pourquoi pas tant que son exécution est totalement transparente
merci beaucoup d'avance
isabelle a écrit :bonjour Pierre,
ok, je comprend mieux la disposition et la complexité de la donne,
je ne crois pas être capable de faire une solution sans macro,
est ce que cela te conviendrait avec une macro ?
isabelle
Pierre52 a écrit :merci à tous de vos réponses,
effectivement avec 0,5 cela fonctionne
mais ,je pense que je me suis mal exprimé
dans la colonne A j'ai la date de début des vacances en
colonnes B j'ai la date de fin des congés en colonnes C j'ai la
formule qui compte les jours ouvrés
(=NB.JOURS.OUVRES(A3;B3;fériés))j'aurai voulu en colonne D par
exemple le nombre de RTT décomptés sachant que
- les 5 jours consécutifs du lundi au vendredi compte pour 1/2
RTT sauf si il y a un jour férié dans ces jours(lundi,..,
vendredi)
exemple: cette année vacances du 25 avril au 10 mai = 0 RTT
alors que,soyons fous, du 25 avril au 07 juin = 1 RTT ou bien
du 25 avril au 17 mai= 1/2 RTT
si je ne suis pas clair dites moi je vous envoie un classeur
encore merci de votre aide
Philippe.R a écrit :Bonsoir,
Essayes,si je comprends bien, en remplaçant a1 par a3 et 0.5
par 0,5
merci beaucoup de ta part
comment je me sert de cette fonction et surtout où faut il que je
l'enregistre
merci d'avance de ta patience
isabelle a écrit :
j'avais mis cela trop compliqué pour rien,
voici la correction :
Function rtt(début As Range, fin As Range) As Double
For i = début To fin
If Application.Weekday(i, 2) < 6 Then
If IsError(Application.Match(CLng(i), Range("fériés"), 0)) Then a =
a + 1
Else
a = 0
End If
If a = 5 Then rtt = rtt + 0.5: a = 0
Next
End Function
isabelle
isabelle a écrit :
bonjour Pierre,
voilà après un excellent repas, ça va mieux,
Function rtt(début As Range, fin As Range) As Double
Application.Volatile
On Error Resume Next
For i = début To fin
If Application.Weekday(i, 2) < 6 Then
If IsError(Range("fériés").Find(What:=i).Row) Then a = a + 1
Else: a = 0
End If
If a = 5 Then rtt = rtt + 0.5: a = 0
Err.Clear
Next
End Function
isabelle
Pierre52 a écrit :
bon appétit et bonne soirée
cordialement
isabelle a écrit :
ok, je regarde ça demain matin, car là je suis attendu pour un
souper à l'extérieur,
isabelle
Pierre52 a écrit :
oui pourquoi pas tant que son exécution est totalement transparente
merci beaucoup d'avance
isabelle a écrit :
bonjour Pierre,
ok, je comprend mieux la disposition et la complexité de la donne,
je ne crois pas être capable de faire une solution sans macro,
est ce que cela te conviendrait avec une macro ?
isabelle
Pierre52 a écrit :
merci à tous de vos réponses,
effectivement avec 0,5 cela fonctionne
mais ,je pense que je me suis mal exprimé
dans la colonne A j'ai la date de début des vacances en
colonnes B j'ai la date de fin des congés en colonnes C j'ai la
formule qui compte les jours ouvrés
(=NB.JOURS.OUVRES(A3;B3;fériés))j'aurai voulu en colonne D par
exemple le nombre de RTT décomptés sachant que
- les 5 jours consécutifs du lundi au vendredi compte pour 1/2
RTT sauf si il y a un jour férié dans ces jours(lundi,..,
vendredi)
exemple: cette année vacances du 25 avril au 10 mai = 0 RTT
alors que,soyons fous, du 25 avril au 07 juin = 1 RTT ou bien
du 25 avril au 17 mai= 1/2 RTT
si je ne suis pas clair dites moi je vous envoie un classeur
encore merci de votre aide
Philippe.R a écrit :
Bonsoir,
Essayes,si je comprends bien, en remplaçant a1 par a3 et 0.5
par 0,5
merci beaucoup de ta part
comment je me sert de cette fonction et surtout où faut il que je
l'enregistre
merci d'avance de ta patience
isabelle a écrit :j'avais mis cela trop compliqué pour rien,
voici la correction :
Function rtt(début As Range, fin As Range) As Double
For i = début To fin
If Application.Weekday(i, 2) < 6 Then
If IsError(Application.Match(CLng(i), Range("fériés"), 0)) Then a =
a + 1
Else
a = 0
End If
If a = 5 Then rtt = rtt + 0.5: a = 0
Next
End Function
isabelle
isabelle a écrit :bonjour Pierre,
voilà après un excellent repas, ça va mieux,
Function rtt(début As Range, fin As Range) As Double
Application.Volatile
On Error Resume Next
For i = début To fin
If Application.Weekday(i, 2) < 6 Then
If IsError(Range("fériés").Find(What:=i).Row) Then a = a + 1
Else: a = 0
End If
If a = 5 Then rtt = rtt + 0.5: a = 0
Err.Clear
Next
End Function
isabelle
Pierre52 a écrit :bon appétit et bonne soirée
cordialement
isabelle a écrit :ok, je regarde ça demain matin, car là je suis attendu pour un
souper à l'extérieur,
isabelle
Pierre52 a écrit :oui pourquoi pas tant que son exécution est totalement transparente
merci beaucoup d'avance
isabelle a écrit :bonjour Pierre,
ok, je comprend mieux la disposition et la complexité de la donne,
je ne crois pas être capable de faire une solution sans macro,
est ce que cela te conviendrait avec une macro ?
isabelle
Pierre52 a écrit :merci à tous de vos réponses,
effectivement avec 0,5 cela fonctionne
mais ,je pense que je me suis mal exprimé
dans la colonne A j'ai la date de début des vacances en
colonnes B j'ai la date de fin des congés en colonnes C j'ai la
formule qui compte les jours ouvrés
(=NB.JOURS.OUVRES(A3;B3;fériés))j'aurai voulu en colonne D par
exemple le nombre de RTT décomptés sachant que
- les 5 jours consécutifs du lundi au vendredi compte pour 1/2
RTT sauf si il y a un jour férié dans ces jours(lundi,..,
vendredi)
exemple: cette année vacances du 25 avril au 10 mai = 0 RTT
alors que,soyons fous, du 25 avril au 07 juin = 1 RTT ou bien
du 25 avril au 17 mai= 1/2 RTT
si je ne suis pas clair dites moi je vous envoie un classeur
encore merci de votre aide
Philippe.R a écrit :Bonsoir,
Essayes,si je comprends bien, en remplaçant a1 par a3 et 0.5
par 0,5
bonjour Pierre,
il faut que tu copie la function dans un module standard du vbaproject
de ton classeur
et ensuite tu l'utilise dans la feuille de calcul comme tout autre
function, comme une Somme :
=rrt(A3;B3)
rtt sera présente dans les fonctions à la catégorie "Personnalisées"
voici un fichier exemple : http://cjoint.com/?kEex7K0zWv
isabelle
Pierre52 a écrit :merci beaucoup de ta part
comment je me sert de cette fonction et surtout où faut il que je
l'enregistre
merci d'avance de ta patience
isabelle a écrit :j'avais mis cela trop compliqué pour rien,
voici la correction :
Function rtt(début As Range, fin As Range) As Double
For i = début To fin
If Application.Weekday(i, 2) < 6 Then
If IsError(Application.Match(CLng(i), Range("fériés"), 0)) Then a =
a + 1
Else
a = 0
End If
If a = 5 Then rtt = rtt + 0.5: a = 0
Next
End Function
isabelle
isabelle a écrit :bonjour Pierre,
voilà après un excellent repas, ça va mieux,
Function rtt(début As Range, fin As Range) As Double
Application.Volatile
On Error Resume Next
For i = début To fin
If Application.Weekday(i, 2) < 6 Then
If IsError(Range("fériés").Find(What:=i).Row) Then a = a + 1
Else: a = 0
End If
If a = 5 Then rtt = rtt + 0.5: a = 0
Err.Clear
Next
End Function
isabelle
Pierre52 a écrit :bon appétit et bonne soirée
cordialement
isabelle a écrit :ok, je regarde ça demain matin, car là je suis attendu pour un
souper à l'extérieur,
isabelle
Pierre52 a écrit :oui pourquoi pas tant que son exécution est totalement transparente
merci beaucoup d'avance
isabelle a écrit :bonjour Pierre,
ok, je comprend mieux la disposition et la complexité de la donne,
je ne crois pas être capable de faire une solution sans macro,
est ce que cela te conviendrait avec une macro ?
isabelle
Pierre52 a écrit :merci à tous de vos réponses,
effectivement avec 0,5 cela fonctionne
mais ,je pense que je me suis mal exprimé
dans la colonne A j'ai la date de début des vacances en
colonnes B j'ai la date de fin des congés en colonnes C j'ai la
formule qui compte les jours ouvrés
(=NB.JOURS.OUVRES(A3;B3;fériés))j'aurai voulu en colonne D par
exemple le nombre de RTT décomptés sachant que
- les 5 jours consécutifs du lundi au vendredi compte pour 1/2
RTT sauf si il y a un jour férié dans ces jours(lundi,..,
vendredi)
exemple: cette année vacances du 25 avril au 10 mai = 0 RTT
alors que,soyons fous, du 25 avril au 07 juin = 1 RTT ou bien
du 25 avril au 17 mai= 1/2 RTT
si je ne suis pas clair dites moi je vous envoie un classeur
encore merci de votre aide
Philippe.R a écrit :Bonsoir,
Essayes,si je comprends bien, en remplaçant a1 par a3 et 0.5
par 0,5
bonjour Pierre,
il faut que tu copie la function dans un module standard du vbaproject
de ton classeur
et ensuite tu l'utilise dans la feuille de calcul comme tout autre
function, comme une Somme :
=rrt(A3;B3)
rtt sera présente dans les fonctions à la catégorie "Personnalisées"
voici un fichier exemple : http://cjoint.com/?kEex7K0zWv
isabelle
Pierre52 a écrit :
merci beaucoup de ta part
comment je me sert de cette fonction et surtout où faut il que je
l'enregistre
merci d'avance de ta patience
isabelle a écrit :
j'avais mis cela trop compliqué pour rien,
voici la correction :
Function rtt(début As Range, fin As Range) As Double
For i = début To fin
If Application.Weekday(i, 2) < 6 Then
If IsError(Application.Match(CLng(i), Range("fériés"), 0)) Then a =
a + 1
Else
a = 0
End If
If a = 5 Then rtt = rtt + 0.5: a = 0
Next
End Function
isabelle
isabelle a écrit :
bonjour Pierre,
voilà après un excellent repas, ça va mieux,
Function rtt(début As Range, fin As Range) As Double
Application.Volatile
On Error Resume Next
For i = début To fin
If Application.Weekday(i, 2) < 6 Then
If IsError(Range("fériés").Find(What:=i).Row) Then a = a + 1
Else: a = 0
End If
If a = 5 Then rtt = rtt + 0.5: a = 0
Err.Clear
Next
End Function
isabelle
Pierre52 a écrit :
bon appétit et bonne soirée
cordialement
isabelle a écrit :
ok, je regarde ça demain matin, car là je suis attendu pour un
souper à l'extérieur,
isabelle
Pierre52 a écrit :
oui pourquoi pas tant que son exécution est totalement transparente
merci beaucoup d'avance
isabelle a écrit :
bonjour Pierre,
ok, je comprend mieux la disposition et la complexité de la donne,
je ne crois pas être capable de faire une solution sans macro,
est ce que cela te conviendrait avec une macro ?
isabelle
Pierre52 a écrit :
merci à tous de vos réponses,
effectivement avec 0,5 cela fonctionne
mais ,je pense que je me suis mal exprimé
dans la colonne A j'ai la date de début des vacances en
colonnes B j'ai la date de fin des congés en colonnes C j'ai la
formule qui compte les jours ouvrés
(=NB.JOURS.OUVRES(A3;B3;fériés))j'aurai voulu en colonne D par
exemple le nombre de RTT décomptés sachant que
- les 5 jours consécutifs du lundi au vendredi compte pour 1/2
RTT sauf si il y a un jour férié dans ces jours(lundi,..,
vendredi)
exemple: cette année vacances du 25 avril au 10 mai = 0 RTT
alors que,soyons fous, du 25 avril au 07 juin = 1 RTT ou bien
du 25 avril au 17 mai= 1/2 RTT
si je ne suis pas clair dites moi je vous envoie un classeur
encore merci de votre aide
Philippe.R a écrit :
Bonsoir,
Essayes,si je comprends bien, en remplaçant a1 par a3 et 0.5
par 0,5
bonjour Pierre,
il faut que tu copie la function dans un module standard du vbaproject
de ton classeur
et ensuite tu l'utilise dans la feuille de calcul comme tout autre
function, comme une Somme :
=rrt(A3;B3)
rtt sera présente dans les fonctions à la catégorie "Personnalisées"
voici un fichier exemple : http://cjoint.com/?kEex7K0zWv
isabelle
Pierre52 a écrit :merci beaucoup de ta part
comment je me sert de cette fonction et surtout où faut il que je
l'enregistre
merci d'avance de ta patience
isabelle a écrit :j'avais mis cela trop compliqué pour rien,
voici la correction :
Function rtt(début As Range, fin As Range) As Double
For i = début To fin
If Application.Weekday(i, 2) < 6 Then
If IsError(Application.Match(CLng(i), Range("fériés"), 0)) Then a =
a + 1
Else
a = 0
End If
If a = 5 Then rtt = rtt + 0.5: a = 0
Next
End Function
isabelle
isabelle a écrit :bonjour Pierre,
voilà après un excellent repas, ça va mieux,
Function rtt(début As Range, fin As Range) As Double
Application.Volatile
On Error Resume Next
For i = début To fin
If Application.Weekday(i, 2) < 6 Then
If IsError(Range("fériés").Find(What:=i).Row) Then a = a + 1
Else: a = 0
End If
If a = 5 Then rtt = rtt + 0.5: a = 0
Err.Clear
Next
End Function
isabelle
Pierre52 a écrit :bon appétit et bonne soirée
cordialement
isabelle a écrit :ok, je regarde ça demain matin, car là je suis attendu pour un
souper à l'extérieur,
isabelle
Pierre52 a écrit :oui pourquoi pas tant que son exécution est totalement transparente
merci beaucoup d'avance
isabelle a écrit :bonjour Pierre,
ok, je comprend mieux la disposition et la complexité de la donne,
je ne crois pas être capable de faire une solution sans macro,
est ce que cela te conviendrait avec une macro ?
isabelle
Pierre52 a écrit :merci à tous de vos réponses,
effectivement avec 0,5 cela fonctionne
mais ,je pense que je me suis mal exprimé
dans la colonne A j'ai la date de début des vacances en
colonnes B j'ai la date de fin des congés en colonnes C j'ai la
formule qui compte les jours ouvrés
(=NB.JOURS.OUVRES(A3;B3;fériés))j'aurai voulu en colonne D par
exemple le nombre de RTT décomptés sachant que
- les 5 jours consécutifs du lundi au vendredi compte pour 1/2
RTT sauf si il y a un jour férié dans ces jours(lundi,..,
vendredi)
exemple: cette année vacances du 25 avril au 10 mai = 0 RTT
alors que,soyons fous, du 25 avril au 07 juin = 1 RTT ou bien
du 25 avril au 17 mai= 1/2 RTT
si je ne suis pas clair dites moi je vous envoie un classeur
encore merci de votre aide
Philippe.R a écrit :Bonsoir,
Essayes,si je comprends bien, en remplaçant a1 par a3 et 0.5
par 0,5