Table of contents
XML
TOC
Réduire la table des matières
Développer la table des matières

Rechercher le nombre de jours ouvrés entre deux dates

office 365 dev account|Dernière mise à jour: 04/10/2017
|
1 Contributeur

Access ne comporte pas de fonction intégrée permettant de déterminer le nombre de jours ouvrés entre deux dates. La fonction définie par l'utilisateur suivante montre comment calculer le nombre de jours ouvrés entre deux dates.

Remarque Cette fonction ne tient pas compte des jours fériés.

Function Work_Days(BegDate As Variant, EndDate As Variant) As Integer

 Dim WholeWeeks As Variant
 Dim DateCnt As Variant
 Dim EndDays As Integer

 On Error GoTo Err_Work_Days

 BegDate = DateValue(BegDate)
 EndDate = DateValue(EndDate)
 WholeWeeks = DateDiff("w", BegDate, EndDate)
 DateCnt = DateAdd("ww", WholeWeeks, BegDate)
 EndDays = 0

 Do While DateCnt <= EndDate
 If Format(DateCnt, "ddd") <> "Sun" And _
 Format(DateCnt, "ddd") <> "Sat" Then
 EndDays = EndDays + 1
 End If
 DateCnt = DateAdd("d", 1, DateCnt)
 Loop

 Work_Days = WholeWeeks * 5 + EndDays

Exit Function

 Err_Work_Days:

 ' If either BegDate or EndDate is Null, return a zero
 ' to indicate that no workdays passed between the two dates.

 If Err.Number = 94 Then
 Work_Days = 0
 Exit Function
 Else
' If some other error occurs, provide a message.
 MsgBox "Error " &amp; Err.Number &amp; ": " &amp; Err.Description
 End If

End Function
© 2018 Microsoft