OVH Cloud OVH Cloud

précision pour calcul

8 réponses
Avatar
J'ai utilis=E9 un module trouv=E9 dans la base de connaissance=20
pour calculer le nombre de jours ouvr=E9s entre une date de=20
debut et une date de fin.

Je voudrai, si c'est possible, que si il n'y a pas de date=20
de fin (*dhDateFin dans le module*) il prenne la date=20
d'aujourd'hui par d=E9fault pour faire son calcul :


Public Function NbreJoursOuvrables(dhDateD=E9but As Date,=20
dhDateFin As Date) As Integer
' Calculer le nombre de jours ouvrables entre deux dates=20
sans l'aide d'une table
' Utilise la fonction JourF=E9ri=E9Mobile(UneDate As Date)
' Dates entr=E9es en format am=E9ricain: MM/JJ/AAAA
' Entr=E9e:
' dhDateD=E9but:
' Date de d=E9part de l'intervallle de temps d=E9sir=E9 au=20
format europ=E9en entre guillemets.
' dhDateFin:
' Date de fin de l'intervalle de temps d=E9sir=E9 au format=20
europ=E9en entre guillemets.
' (les dates seront invers=E9es si n=E9cessaire)
' Test de validit=E9 des dates
If IsNull(dhDateD=E9but) Or IsNull(dhDateFin) Then
NbreJoursOuvrables =3D 0
Exit Function
ElseIf Not IsDate(dhDateD=E9but) Or Not IsDate(dhDateFin)=20
Then
NbreJoursOuvrables =3D 0
Exit Function
ElseIf dhDateD=E9but > dhDateFin Then
' Inversion des dates si n=E9cessaire.
Dim dhTemp As Date
dhTemp =3D dhDateD=E9but
dhDateD=E9but =3D dhDateFin
dhDateFin =3D dhTemp
End If
'Conversion des dates en valeurs num=E9riques (Double=20
pr=E9cision) format de date interne de la machine
Dim dbldhDateD=E9but As Double
Dim dbldhDateFin As Double
dbldhDateD=E9but =3D CDbl(dhDateD=E9but)
dbldhDateFin =3D CDbl(dhDateFin)
Dim dhDateCourante As Date
Dim R=E9sultat As Integer
Dim intAn As Integer
intAn =3D Year(Date)
' Comptage des jours entre la date de d=E9but et la date de=20
fin de l'intervalle de temps sp=E9cifi=E9
Do Until dbldhDateD=E9but > dbldhDateFin
' Initialisation du jour courant =E0 la date de d=E9but
dhDateCourante =3D CDate(dbldhDateD=E9but)
'Test pour savoir si le jour courant est ouvrable
If Weekday(dhDateCourante) <> 1 And Weekday
(dhDateCourante) <> 7 Then
'Test des jours f=E9ri=E9s avec dates invariables
Select Case dhDateCourante
Case CDate("01/01/" & intAn) 'Jour de l'an
Case CDate("01/05/" & intAn) 'F=EAte du travail
Case CDate("01/08/" & intAn) 'F=EAte nationale=20
suisse
Case CDate("25/12/" & intAn) 'No=EBl
Case CDate("26/12/" & intAn) 'St-Etienne
Case Else
' Totalise les jours ouvrables
R=E9sultat =3D R=E9sultat + 1
End Select
End If
dbldhDateD=E9but =3D dbldhDateD=E9but + 1
Loop
NbreJoursOuvrables =3D R=E9sultat
End Function

8 réponses

Avatar
Jessy Sempere [MVP]
Bonjour

Je n'ai pas regardé ta fonction mais tu peux essayer ceci :

****************************************************
Public Function NbOpenDay(dtDeb As Date, Optional dtFin As Date) As Integer
' Calculer le nombre de jours ouvrables entre deux dates
' Utilise la fonction JourFérié(dtDate As Date)

Dim dblDateDeb As Double
Dim dblDateFin As Double
Dim DateCourante As Date
Dim resultat As Integer

If dtFin = 0 Then dtFin = DATE
If IsNull(dtDeb) Or IsNull(dtFin) _
Or IsEmpty(dtDeb) Or IsEmpty(dtFin) Then
NbOpenDay = 0
Exit Function
ElseIf Not IsDate(dtDeb) Or Not IsDate(dtFin) Then
NbOpenDay = 0
Exit Function
ElseIf dtDeb > dtFin Then
Dim dhTemp As Date
dhTemp = dtDeb
dtDeb = dtFin
dtFin = dhTemp
End If

dblDateDeb = CDbl(dtDeb)
dblDateFin = CDbl(dtFin)

Do Until dblDateDeb > dblDateFin
DateCourante = CDate(dblDateDeb)
If WeekDay(DateCourante) <> 1 And _
WeekDay(DateCourante) <> 7 And _
JourFérié(DateCourante) = False Then
resultat = resultat + 1
End If
dblDateDeb = dblDateDeb + 1
Loop
NbOpenDay = resultat

End Function
****************************************************

--
@+
Jessy Sempere - Access MVP

------------------------------------
Site @ccess : http://access.jessy.free.fr/
Pour l'efficacité de tous :
http://users.skynet.be/mpfa/
------------------------------------
a écrit dans le message news:
343b01c4aa09$aca83970$
J'ai utilisé un module trouvé dans la base de connaissance
pour calculer le nombre de jours ouvrés entre une date de
debut et une date de fin.

Je voudrai, si c'est possible, que si il n'y a pas de date
de fin (*dhDateFin dans le module*) il prenne la date
d'aujourd'hui par défault pour faire son calcul :


Public Function NbreJoursOuvrables(dhDateDébut As Date,
dhDateFin As Date) As Integer
' Calculer le nombre de jours ouvrables entre deux dates
sans l'aide d'une table
' Utilise la fonction JourFériéMobile(UneDate As Date)
' Dates entrées en format américain: MM/JJ/AAAA
' Entrée:
' dhDateDébut:
' Date de départ de l'intervallle de temps désiré au
format européen entre guillemets.
' dhDateFin:
' Date de fin de l'intervalle de temps désiré au format
européen entre guillemets.
' (les dates seront inversées si nécessaire)
' Test de validité des dates
If IsNull(dhDateDébut) Or IsNull(dhDateFin) Then
NbreJoursOuvrables = 0
Exit Function
ElseIf Not IsDate(dhDateDébut) Or Not IsDate(dhDateFin)
Then
NbreJoursOuvrables = 0
Exit Function
ElseIf dhDateDébut > dhDateFin Then
' Inversion des dates si nécessaire.
Dim dhTemp As Date
dhTemp = dhDateDébut
dhDateDébut = dhDateFin
dhDateFin = dhTemp
End If
'Conversion des dates en valeurs numériques (Double
précision) format de date interne de la machine
Dim dbldhDateDébut As Double
Dim dbldhDateFin As Double
dbldhDateDébut = CDbl(dhDateDébut)
dbldhDateFin = CDbl(dhDateFin)
Dim dhDateCourante As Date
Dim Résultat As Integer
Dim intAn As Integer
intAn = Year(Date)
' Comptage des jours entre la date de début et la date de
fin de l'intervalle de temps spécifié
Do Until dbldhDateDébut > dbldhDateFin
' Initialisation du jour courant à la date de début
dhDateCourante = CDate(dbldhDateDébut)
'Test pour savoir si le jour courant est ouvrable
If Weekday(dhDateCourante) <> 1 And Weekday
(dhDateCourante) <> 7 Then
'Test des jours fériés avec dates invariables
Select Case dhDateCourante
Case CDate("01/01/" & intAn) 'Jour de l'an
Case CDate("01/05/" & intAn) 'Fête du travail
Case CDate("01/08/" & intAn) 'Fête nationale
suisse
Case CDate("25/12/" & intAn) 'Noël
Case CDate("26/12/" & intAn) 'St-Etienne
Case Else
' Totalise les jours ouvrables
Résultat = Résultat + 1
End Select
End If
dbldhDateDébut = dbldhDateDébut + 1
Loop
NbreJoursOuvrables = Résultat
End Function
Avatar
Je viens juste d'essayer mais il me dit qu'il ne trouve
pas la fonction *JourFérié*.
Ca m'arrangerai si tu pouvais regarder le module que j'ai
utilisé parceque il prend compte des vendredi et samedi et
des jours fériés particuliers...
Merci




-----Message d'origine-----
Bonjour

Je n'ai pas regardé ta fonction mais tu peux essayer
ceci :


****************************************************
Public Function NbOpenDay(dtDeb As Date, Optional dtFin
As Date) As Integer

' Calculer le nombre de jours ouvrables entre deux dates
' Utilise la fonction JourFérié(dtDate As Date)

Dim dblDateDeb As Double
Dim dblDateFin As Double
Dim DateCourante As Date
Dim resultat As Integer

If dtFin = 0 Then dtFin = DATE
If IsNull(dtDeb) Or IsNull(dtFin) _
Or IsEmpty(dtDeb) Or IsEmpty(dtFin) Then
NbOpenDay = 0
Exit Function
ElseIf Not IsDate(dtDeb) Or Not IsDate(dtFin) Then
NbOpenDay = 0
Exit Function
ElseIf dtDeb > dtFin Then
Dim dhTemp As Date
dhTemp = dtDeb
dtDeb = dtFin
dtFin = dhTemp
End If

dblDateDeb = CDbl(dtDeb)
dblDateFin = CDbl(dtFin)

Do Until dblDateDeb > dblDateFin
DateCourante = CDate(dblDateDeb)
If WeekDay(DateCourante) <> 1 And _
WeekDay(DateCourante) <> 7 And _
JourFérié(DateCourante) = False Then
resultat = resultat + 1
End If
dblDateDeb = dblDateDeb + 1
Loop
NbOpenDay = resultat

End Function
****************************************************


Avatar
Jessy Sempere [MVP]
En fait j'ai oublié de te donner le reste du code, copies ce qui suit
dans ton module :

************************************************

Public Function fPaques(wAn%) As Date
'Pâques est le dimanche qui suit le quatorzième jour de la
'Lune qui tombe le 21 mars ou immédiatement après

Dim wA%, wB%, wC%, wD%, wE%, wF%, wG%, wH%
Dim wI%, wJ%, wK%, wL%, wM%, wN%, wP%

wA = wAn Mod 19 'Calcul du rang de l'année dans le cycle lunaire qui a 19 ans
wB = wAn 100 'Calcul du siècle
wC = wAn Mod 100 'Calcul du rang de l'année dans le siècle
wD = wB 4
wE = wB Mod 4
wF = (wB + 8) 25
wG = (wB - wF + 1) 3
wH = (19 * wA + wB - wD - wG + 15) Mod 30
wI = wC 4
wK = wC Mod 4
wL = (32 + 2 * wE + 2 * wI - wH - wK) Mod 7
wM = (wA + 11 * wH + 22 * wL) 451
wN = (wH + wL - 7 * wM + 114) 31 'détermine le mois
wP = (wH + wL - 7 * wM + 114) Mod 31 'détermine le jour

fPaques = DateSerial(wAn, wN, wP + 1)

'** A titre d'info :************'
'** dtVenSaint = fPaques - 2****'
'** dtLunPaq = fPaques + 1******'
'** dtAscension = fPaques + 39**'
'** dtDimPent = fPaques + 49****'
'** dtLunPent = fPaques + 50****'

End Function

Public Function JourFérié(dtDate As Date) As Boolean

Dim dtPaques As Date
dtPaques = fPaques(Year(dtDate))
Select Case dtDate
Case CDate("01/01/" & Year(dtDate)) 'Jour de l'an
JourFérié = True
Case CDate("01/05/" & Year(dtDate)) 'Fête du travail
JourFérié = True
Case CDate("08/05/" & Year(dtDate)) 'Victoire de 1945
JourFérié = True
Case CDate("14/07/" & Year(dtDate)) 'Fête nationale
JourFérié = True
Case CDate("15/08/" & Year(dtDate)) 'Assomption
JourFérié = True
Case CDate("01/11/" & Year(dtDate)) 'Toussaint
JourFérié = True
Case CDate("11/11/" & Year(dtDate)) 'Armistie 1918
JourFérié = True
Case CDate("25/12/" & Year(dtDate)) 'Noël
JourFérié = True
Case dtPaques + 1 'Lundi de Pâques
JourFérié = True
Case dtPaques + 39 'Ascension
JourFérié = True
Case dtPaques + 50 'Lundi de pentcôte
JourFérié = True
Case Else
JourFérié = False
End Select

End Function
************************************************

--
@+
Jessy Sempere - Access MVP

------------------------------------
Site @ccess : http://access.jessy.free.fr/
Pour l'efficacité de tous :
http://users.skynet.be/mpfa/
------------------------------------
a écrit dans le message news:
347a01c4aa0d$7bacb770$
Je viens juste d'essayer mais il me dit qu'il ne trouve
pas la fonction *JourFérié*.
Ca m'arrangerai si tu pouvais regarder le module que j'ai
utilisé parceque il prend compte des vendredi et samedi et
des jours fériés particuliers...
Merci
Avatar
Là ça marche bien c'est ok j'obtient en gros le même
résultat qu'avec l'autre module.

Mais en fait J'ai toujours le problème du message
*#ERREUR* dans le champ réservé au résultat du calcul
parceque des fois il n'y a pas de date de fin
(_dblDateFin_...dans le module que tu m'as donné) et
j'aimerai que par défault si il n'y a pas de date de fin
il prenne la date d'aujourd'hui...
Merci





-----Message d'origine-----
En fait j'ai oublié de te donner le reste du code, copies
ce qui suit

dans ton module :

************************************************

Public Function fPaques(wAn%) As Date
'Pâques est le dimanche qui suit le quatorzième jour de la
'Lune qui tombe le 21 mars ou immédiatement après

Dim wA%, wB%, wC%, wD%, wE%, wF%, wG%, wH%
Dim wI%, wJ%, wK%, wL%, wM%, wN%, wP%

wA = wAn Mod 19 'Calcul du rang de l'année dans le cycle
lunaire qui a 19 ans

wB = wAn 100 'Calcul du siècle
wC = wAn Mod 100 'Calcul du rang de l'année dans le siècle
wD = wB 4
wE = wB Mod 4
wF = (wB + 8) 25
wG = (wB - wF + 1) 3
wH = (19 * wA + wB - wD - wG + 15) Mod 30
wI = wC 4
wK = wC Mod 4
wL = (32 + 2 * wE + 2 * wI - wH - wK) Mod 7
wM = (wA + 11 * wH + 22 * wL) 451
wN = (wH + wL - 7 * wM + 114) 31 'détermine le mois
wP = (wH + wL - 7 * wM + 114) Mod 31 'détermine le jour

fPaques = DateSerial(wAn, wN, wP + 1)

'** A titre d'info :************'
'** dtVenSaint = fPaques - 2****'
'** dtLunPaq = fPaques + 1******'
'** dtAscension = fPaques + 39**'
'** dtDimPent = fPaques + 49****'
'** dtLunPent = fPaques + 50****'

End Function

Public Function JourFérié(dtDate As Date) As Boolean

Dim dtPaques As Date
dtPaques = fPaques(Year(dtDate))
Select Case dtDate
Case CDate("01/01/" & Year(dtDate)) 'Jour de l'an
JourFérié = True
Case CDate("01/05/" & Year(dtDate)) 'Fête du
travail

JourFérié = True
Case CDate("08/05/" & Year(dtDate)) 'Victoire de
1945

JourFérié = True
Case CDate("14/07/" & Year(dtDate)) 'Fête
nationale

JourFérié = True
Case CDate("15/08/" & Year(dtDate)) 'Assomption
JourFérié = True
Case CDate("01/11/" & Year(dtDate)) 'Toussaint
JourFérié = True
Case CDate("11/11/" & Year(dtDate)) 'Armistie 1918
JourFérié = True
Case CDate("25/12/" & Year(dtDate)) 'Noël
JourFérié = True
Case dtPaques + 1 'Lundi de Pâques
JourFérié = True
Case dtPaques + 39 'Ascension
JourFérié = True
Case dtPaques + 50 'Lundi de pentcôte
JourFérié = True
Case Else
JourFérié = False
End Select

End Function
************************************************

--
@+
Jessy Sempere - Access MVP

------------------------------------
Site @ccess : http://access.jessy.free.fr/
Pour l'efficacité de tous :
http://users.skynet.be/mpfa/
------------------------------------
a écrit dans le
message news:

347a01c4aa0d$7bacb770$
Je viens juste d'essayer mais il me dit qu'il ne trouve
pas la fonction *JourFérié*.
Ca m'arrangerai si tu pouvais regarder le module que j'ai
utilisé parceque il prend compte des vendredi et samedi et
des jours fériés particuliers...
Merci



.



Avatar
Jessy Sempere [MVP]
Re,


Là ça marche bien c'est ok j'obtient en gros le même
résultat qu'avec l'autre module.

Mais en fait J'ai toujours le problème du message
*#ERREUR* dans le champ réservé au résultat du calcul
parceque des fois il n'y a pas de date de fin
(_dblDateFin_...dans le module que tu m'as donné) et
j'aimerai que par défault si il n'y a pas de date de fin
il prenne la date d'aujourd'hui...


Ben justement je te l'ai envoyé parce que la date fin est optionnelle,
si tu ne la mets pas, il prend la date du jour...

Comment appelles-tu la fonction que je t'ai donné ?
Normalement il faut faire :

nbopenday(#taDate#)

@+
Jessy Sempere - Access MVP

------------------------------------
Site @ccess : http://access.jessy.free.fr/
Pour l'efficacité de tous :
http://users.skynet.be/mpfa/
------------------------------------

Avatar
Jessy Sempere [MVP]
Salut Pierre

On a changé de serveur, maintenant on est sous Microsoft Exchange...
Il y avait des pb de mails et donc le but était de résoudre tout ça,
visiblement maintenant il y a des pb avec les mails venant de l'extérieur...

Faut que je vois avec eux pour leur signaler.

--
@+
Jessy Sempere - Access MVP

------------------------------------
Site @ccess : http://access.jessy.free.fr/
Pour l'efficacité de tous :
http://users.skynet.be/mpfa/
------------------------------------
"Pierre CFI [mvp]" a écrit dans le message news:
e2qn$
dis moi , ton adresse au boulot n'est plus bonne ???

--
Pierre CFI
MVP Microsoft Access
Mail : http://cerbermail.com/?z0SN8cN53B

Site pour bien commencer
http://users.skynet.be/mpfa/
Site perso
http://access.cfi.free.fr
"Jessy Sempere [MVP]" a écrit dans le message de
news:cjrghh$3h6$

En fait j'ai oublié de te donner le reste du code, copies ce qui suit
dans ton module :

************************************************

Public Function fPaques(wAn%) As Date
'Pâques est le dimanche qui suit le quatorzième jour de la
'Lune qui tombe le 21 mars ou immédiatement après

Dim wA%, wB%, wC%, wD%, wE%, wF%, wG%, wH%
Dim wI%, wJ%, wK%, wL%, wM%, wN%, wP%

wA = wAn Mod 19 'Calcul du rang de l'année dans le cycle lunaire qui a 19 ans
wB = wAn 100 'Calcul du siècle
wC = wAn Mod 100 'Calcul du rang de l'année dans le siècle
wD = wB 4
wE = wB Mod 4
wF = (wB + 8) 25
wG = (wB - wF + 1) 3
wH = (19 * wA + wB - wD - wG + 15) Mod 30
wI = wC 4
wK = wC Mod 4
wL = (32 + 2 * wE + 2 * wI - wH - wK) Mod 7
wM = (wA + 11 * wH + 22 * wL) 451
wN = (wH + wL - 7 * wM + 114) 31 'détermine le mois
wP = (wH + wL - 7 * wM + 114) Mod 31 'détermine le jour

fPaques = DateSerial(wAn, wN, wP + 1)

'** A titre d'info :************'
'** dtVenSaint = fPaques - 2****'
'** dtLunPaq = fPaques + 1******'
'** dtAscension = fPaques + 39**'
'** dtDimPent = fPaques + 49****'
'** dtLunPent = fPaques + 50****'

End Function

Public Function JourFérié(dtDate As Date) As Boolean

Dim dtPaques As Date
dtPaques = fPaques(Year(dtDate))
Select Case dtDate
Case CDate("01/01/" & Year(dtDate)) 'Jour de l'an
JourFérié = True
Case CDate("01/05/" & Year(dtDate)) 'Fête du travail
JourFérié = True
Case CDate("08/05/" & Year(dtDate)) 'Victoire de 1945
JourFérié = True
Case CDate("14/07/" & Year(dtDate)) 'Fête nationale
JourFérié = True
Case CDate("15/08/" & Year(dtDate)) 'Assomption
JourFérié = True
Case CDate("01/11/" & Year(dtDate)) 'Toussaint
JourFérié = True
Case CDate("11/11/" & Year(dtDate)) 'Armistie 1918
JourFérié = True
Case CDate("25/12/" & Year(dtDate)) 'Noël
JourFérié = True
Case dtPaques + 1 'Lundi de Pâques
JourFérié = True
Case dtPaques + 39 'Ascension
JourFérié = True
Case dtPaques + 50 'Lundi de pentcôte
JourFérié = True
Case Else
JourFérié = False
End Select

End Function
************************************************

--
@+
Jessy Sempere - Access MVP

------------------------------------
Site @ccess : http://access.jessy.free.fr/
Pour l'efficacité de tous :
http://users.skynet.be/mpfa/
------------------------------------
a écrit dans le message news:
347a01c4aa0d$7bacb770$
Je viens juste d'essayer mais il me dit qu'il ne trouve
pas la fonction *JourFérié*.
Ca m'arrangerai si tu pouvais regarder le module que j'ai
utilisé parceque il prend compte des vendredi et samedi et
des jours fériés particuliers...
Merci









Avatar
Pierre CFI [mvp]
dis moi , ton adresse au boulot n'est plus bonne ???

--
Pierre CFI
MVP Microsoft Access
Mail : http://cerbermail.com/?z0SN8cN53B

Site pour bien commencer
http://users.skynet.be/mpfa/
Site perso
http://access.cfi.free.fr
"Jessy Sempere [MVP]" a écrit dans le message de news:cjrghh$3h6$
En fait j'ai oublié de te donner le reste du code, copies ce qui suit
dans ton module :

************************************************

Public Function fPaques(wAn%) As Date
'Pâques est le dimanche qui suit le quatorzième jour de la
'Lune qui tombe le 21 mars ou immédiatement après

Dim wA%, wB%, wC%, wD%, wE%, wF%, wG%, wH%
Dim wI%, wJ%, wK%, wL%, wM%, wN%, wP%

wA = wAn Mod 19 'Calcul du rang de l'année dans le cycle lunaire qui a 19 ans
wB = wAn 100 'Calcul du siècle
wC = wAn Mod 100 'Calcul du rang de l'année dans le siècle
wD = wB 4
wE = wB Mod 4
wF = (wB + 8) 25
wG = (wB - wF + 1) 3
wH = (19 * wA + wB - wD - wG + 15) Mod 30
wI = wC 4
wK = wC Mod 4
wL = (32 + 2 * wE + 2 * wI - wH - wK) Mod 7
wM = (wA + 11 * wH + 22 * wL) 451
wN = (wH + wL - 7 * wM + 114) 31 'détermine le mois
wP = (wH + wL - 7 * wM + 114) Mod 31 'détermine le jour

fPaques = DateSerial(wAn, wN, wP + 1)

'** A titre d'info :************'
'** dtVenSaint = fPaques - 2****'
'** dtLunPaq = fPaques + 1******'
'** dtAscension = fPaques + 39**'
'** dtDimPent = fPaques + 49****'
'** dtLunPent = fPaques + 50****'

End Function

Public Function JourFérié(dtDate As Date) As Boolean

Dim dtPaques As Date
dtPaques = fPaques(Year(dtDate))
Select Case dtDate
Case CDate("01/01/" & Year(dtDate)) 'Jour de l'an
JourFérié = True
Case CDate("01/05/" & Year(dtDate)) 'Fête du travail
JourFérié = True
Case CDate("08/05/" & Year(dtDate)) 'Victoire de 1945
JourFérié = True
Case CDate("14/07/" & Year(dtDate)) 'Fête nationale
JourFérié = True
Case CDate("15/08/" & Year(dtDate)) 'Assomption
JourFérié = True
Case CDate("01/11/" & Year(dtDate)) 'Toussaint
JourFérié = True
Case CDate("11/11/" & Year(dtDate)) 'Armistie 1918
JourFérié = True
Case CDate("25/12/" & Year(dtDate)) 'Noël
JourFérié = True
Case dtPaques + 1 'Lundi de Pâques
JourFérié = True
Case dtPaques + 39 'Ascension
JourFérié = True
Case dtPaques + 50 'Lundi de pentcôte
JourFérié = True
Case Else
JourFérié = False
End Select

End Function
************************************************

--
@+
Jessy Sempere - Access MVP

------------------------------------
Site @ccess : http://access.jessy.free.fr/
Pour l'efficacité de tous :
http://users.skynet.be/mpfa/
------------------------------------
a écrit dans le message news:
347a01c4aa0d$7bacb770$
Je viens juste d'essayer mais il me dit qu'il ne trouve
pas la fonction *JourFérié*.
Ca m'arrangerai si tu pouvais regarder le module que j'ai
utilisé parceque il prend compte des vendredi et samedi et
des jours fériés particuliers...
Merci





Avatar
Non en fait c'est pas du tout ça que je fais moi c'est
plutôt : NbOpenDay(Date demande,Date de solde de l'écart)
parcequ'en fait dans mon formulaire j'ai deux champs *Date
demande* et *Date de solde de l'écart* qui corresponde
respectivement à la date de début et à la date de fin,
seulement il n'y a pas forcément toujours de date de fin
donc je voulais que par défault il prenne la date
d'aujourd'hui.



-----Message d'origine-----
Re,


Là ça marche bien c'est ok j'obtient en gros le même
résultat qu'avec l'autre module.

Mais en fait J'ai toujours le problème du message
*#ERREUR* dans le champ réservé au résultat du calcul
parceque des fois il n'y a pas de date de fin
(_dblDateFin_...dans le module que tu m'as donné) et
j'aimerai que par défault si il n'y a pas de date de fin
il prenne la date d'aujourd'hui...


Ben justement je te l'ai envoyé parce que la date fin est
optionnelle,

si tu ne la mets pas, il prend la date du jour...

Comment appelles-tu la fonction que je t'ai donné ?
Normalement il faut faire :

nbopenday(#taDate#)

@+
Jessy Sempere - Access MVP

------------------------------------
Site @ccess : http://access.jessy.free.fr/
Pour l'efficacité de tous :
http://users.skynet.be/mpfa/
------------------------------------


.