WEEKDAY |
Jour de la semaine |
|---|---|
| Visual Basic | |
Syntaxe
| Function WEEKDAY(Date, Optional ByVal FirstDayOfWeek As VbDayOfWeek = vbSunday) As Integer |
Paramètres
| Nom | Description | |||
|---|---|---|---|---|
| Date | Ce paramètre permet d'indiquer la date contenant l'expression à traiter | |||
| FirstDayOfWeek | Ce paramètre permet d'indiquer le premier jour de la semaine devant être calculé pour la semaine retourné : | |||
| Valeur | Constante | Description | ||
| 1 | vbSunday | Cette valeur indique le Dimanche | ||
| 2 | vbMonday | Cette valeur indique le Lundi | ||
| 3 | vbTuesday | Cette valeur indique le Mardi | ||
| 4 | vbWednesday | Cette valeur indique le Mercredi | ||
| 5 | vbThursday | Cette valeur indique le Jeudi | ||
| 6 | vbFriday | Cette valeur indique le Vendredi | ||
| 7 | vbSaturday | Cette valeur indique le Samedi | ||
Retour
| Valeur | Description |
|---|---|
| 1 | Cette valeur indique le Dimanche |
| 2 | Cette valeur indique le Lundi |
| 3 | Cette valeur indique le Mardi |
| 4 | Cette valeur indique le Mercredi |
| 5 | Cette valeur indique le Jeudi |
| 6 | Cette valeur indique le Vendredi |
| 7 | Cette valeur indique le Samedi |
Description
Cette fonction retourne le jour de la semaine d'une date.
Remarques
- La fonction Weekday permet de déterminer le jour de la semaine correspondant à une date donnée. Elle retourne un entier de 1 à 7, représentant un jour spécifique selon le premier jour de la semaine défini, ce qui la rend utile pour le traitement des calendriers.
- Le paramètre optionnel FirstDayOfWeek permet de modifier le point de départ de la semaine, par défaut fixé au dimanche (vbSunday). Cela offre une certaine souplesse selon les contextes culturels ou les besoins métiers, où la semaine commence parfois le lundi.
- Le résultat retourné dépend à la fois de la date fournie et du jour choisi comme début de semaine. Ainsi, pour une même date, la valeur retournée par Weekday peut varier si on utilise vbSunday ou vbMonday comme premier jour de la semaine.
- La fonction est particulièrement utile dans les applications de gestion de planning, de ressources ou de rapports hebdomadaires, où il est nécessaire de savoir à quel jour de la semaine correspond une date donnée pour organiser les tâches.
- Il est important de noter que la valeur de retour est toujours relative au FirstDayOfWeek choisi. Par exemple, si vous définissez vbMonday, un lundi vaudra 1, alors qu'avec vbSunday, il vaudra 2. Cela peut prêter à confusion si on ne le garde pas en tête.
- Weekday fonctionne également avec des valeurs littérales ou variables contenant des dates. Cela la rend compatible avec de nombreuses sources de données, qu'elles soient entrées par l'utilisateur ou extraites d'un système de gestion.
- Il est conseillé de combiner Weekday avec WeekdayName pour afficher directement le nom du jour plutôt que sa valeur numérique. Cela améliore la lisibilité dans les interfaces utilisateurs et évite des confusions liées aux conversions manuelles.
- Lorsque vous travaillez avec des fuseaux horaires ou des formats de date internationaux, veillez à bien standardiser les entrées. Weekday se base sur l'interprétation locale de la date, ce qui peut générer des erreurs si les formats ne sont pas unifiés.
Exemple
Voici un exemple d'une utilisation typique de cette fonction :
- Sub Main()
- MsgBox "WeekDay(""2010-01-09"",1)=" & WeekDay("2010-01-09",1) & vbCrLf & _
- "WeekDay(""2010-01-09 05:30:00"",2)=" & WeekDay("2010-01-09 05:30:00",2) & vbCrLf & _
- "WeekDay(""2010-01-09"",3)=" & WeekDay("2010-01-09",3) & vbCrLf & _
- "WeekDay(""2010-01-09 05:30:00"",4)=" & WeekDay("2010-01-09 05:30:00",4) & vbCrLf & _
- "WeekDay(""2010-01-09"",5)=" & WeekDay("2010-01-09",5) & vbCrLf & _
- "WeekDay(""2010-01-09 05:30:00"",6)=" & WeekDay("2010-01-09 05:30:00",6) & vbCrLf & _
- "WeekDay(""2010-01-09"",7)=" & WeekDay("2010-01-09",7) & vbCrLf & _
- "WeekDay(""2010-01-09"",vbSunday)=" & WeekDay("2010-01-09",vbSunday) & vbCrLf & _
- "WeekDay(""2010-01-09"",vbMonday)=" & WeekDay("2010-01-09",vbMonday) & vbCrLf & _
- "WeekDay(""2010-01-09"",vbMonday)=" & WeekDay("2010-01-09",vbTuesday )
- End Sub
on obtiendra le résultat suivant :
WeekDay("2010-01-09",1)=7WeekDay("2010-01-09 05:30:00",2)=6
WeekDay("2010-01-09",3)=5
WeekDay("2010-01-09 05:30:00",4)=4
WeekDay("2010-01-09",5)=3
WeekDay("2010-01-09 05:30:00",6)=2
WeekDay("2010-01-09",7)=1
WeekDay("2010-01-09",vbSunday)=7
WeekDay("2010-01-09",vbMonday)=6
WeekDay("2010-01-09",vbMonday)=5
Dernière mise à jour : Lundi, le 19 novembre 2012