h_adil
Messages postés231Date d'inscriptionmercredi 27 avril 2005StatutMembreDernière intervention10 juin 2009
-
4 mai 2005 à 14:18
AdilELHASSOUNI
Messages postés145Date d'inscriptionvendredi 11 janvier 2002StatutMembreDernière intervention19 juin 2007
-
4 mai 2005 à 22:53
bonjour
comment a partir dela fonction qui calcule le nombre de jour ouvrée je trouve la date exacte
de jour
exemple j'ai un nombre de jour ouvrée qui est egale a 5
la date de debut est 3/05/2005
comment trouvé que le jour que je cherche est 10/05/2005
merci
PtitGrumo
Messages postés205Date d'inscriptionsamedi 22 janvier 2005StatutMembreDernière intervention28 novembre 20052 4 mai 2005 à 16:38
Salut
'******************************************************
Public Function DateOuvree(maDate As Date, nbJours As Long) As Date
Dim laDate As Date
Dim i As Long
laDate = CDate(Format(maDate, "dd/mm/yyyy"))
If nbJours < 0 Then
Do Until EstDateOuvree(laDate)
laDate = laDate - 1
Loop
For i = -1 To nbJours Step -1
laDate = laDate - 1
Do Until EstDateOuvree(laDate)
laDate = laDate - 1
Loop
Next
Else
Do Until EstDateOuvree(laDate)
laDate = laDate + 1
Loop
For i = 1 To nbJours
laDate = laDate + 1
Do Until EstDateOuvree(laDate)
laDate = laDate + 1
Loop
Next
End If
DateOuvree = CDate(Format(laDate, "dd/mm/yyyy"))
End Function
Public Function EstDateOuvree(maDate As Date) As Boolean
Dim leJour As Integer
Dim rs As Recordset
leJour = WeekDay(maDate, vbMonday)
If leJour > 5 Then
EstDateOuvree = False
Else Set rs CurrentDb.OpenRecordset("SELECT * FROM zDTE WHERE DTE_DATE #" & Format(maDate, "dd/mm/yyyy") & "#")
If rs.EOF And rs.BOF Then
EstDateOuvree = True
Else
EstDateOuvree = False
End If
End If
End Function
Voila deux fonction. La fonction EstDateOuvree sert à la première fonction et ^permet quand tu lui envoi une date de dire si oui ou non la date est ouvrée
Pour ton cas recopie tel quel les deux fonction et appel la première fonction
DateOuvree(taDate,le nombre de jour à ajouter)
Voila!
ATTENTION : Tu dois créer une table "zDTE" comportant un champs "DTE_DATE"
ainsi tu peux lister les dates de l'année ferier comme le 14 juillet 2005 ou autre. Ainsi les date ajoutée à cette table ne seront pas comptée comme ouvrée
A++
Vous n’avez pas trouvé la réponse que vous recherchez ?
cs_CanisLupus
Messages postés3757Date d'inscriptionmardi 23 septembre 2003StatutMembreDernière intervention13 mars 200620 4 mai 2005 à 20:39
Il n'existe aucune fonction VB, VBS, VBA,VB6, VB.NET ou autre qui permette de calculer les jours ouvrés.
En France, jusqu'à aujourd'hui, les jours "ouvrables" (travaillables) sont tous les jours sauf le dimanche. Quoique de plus en plus de gens travaillent aussi le dimanche et d'ailleurs pourquoi pas ? Par ex, les pompiers et les personnels des hopitaux, pour ne parler que d'eux, répondent-ils "désolé, c'est dimanche, je ne travaille pas" ?
Les jours "ouvrés" (travaillés) dépendent des conventions collectives des différentes branches de l'industrie, du commerce etc.... voir le code du travail et la ou les conventions collectives. En gros une jungle !
Donc, prog avec test des weekdays...... Bon courage !!!