Une petite fonction qui permet de savoir si la date passée en argument correspond à une jour de week-end ou non.
La fonction VBA
Public Function EstWeekEnd(ByVal dDate As Date) As Boolean
If Weekday(dDate, vbMonday) > 5 Then EstWeekEnd = True
End Function
If Weekday(dDate, vbMonday) > 5 Then EstWeekEnd = True
End Function
Elle retourne Vrai si la date est un samedi ou un dimanche sinon elle renvoie Faux par défaut.
Principe
On impose à ‘Weekday()’ que le 1er jour de semaine est le lundi (constante ‘vbMonday’) et non le dimanche par défaut. Ainsi, le 6ème et le 7ème jour sont le samedi et le dimanche.
Exemples
Dans la fenêtre Exécution du VBE.
?EstWeekEnd(#2013/8/16#) 'Vendredi 16 août 2013 : Faux
?EstWeekEnd(#2013/8/17#) 'Samedi 17 août 2013 : Vrai
?EstWeekEnd(#2013/8/18#) 'Dimanche 18 août 2013 : Vrai
?EstWeekEnd(#2013/8/19#) 'Lundi 19 août 2013 : Faux
?EstWeekEnd(#2013/8/17#) 'Samedi 17 août 2013 : Vrai
?EstWeekEnd(#2013/8/18#) 'Dimanche 18 août 2013 : Vrai
?EstWeekEnd(#2013/8/19#) 'Lundi 19 août 2013 : Faux
@+
Philippe