WEEKDAY |
Jour de la semaine |
|---|---|
| ASP 3.0 | |
Syntaxe
| Function WEEKDAY(Date,[FirstDayOfWeek As VbDayOfWeek]) 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
- WEEKDAY permet d'identifier facilement le jour d'une date donnée : La fonction WEEKDAY est essentielle lorsqu'on souhaite extraire le jour de la semaine à partir d'une date. Elle retourne un entier compris entre 1 et 7, ce qui permet de savoir si la date correspond à un lundi, un mardi, etc. Cette fonctionnalité est très utile pour les systèmes de planification, les agendas ou les statistiques par jour.
- Le choix du premier jour de la semaine est personnalisable : Un des atouts majeurs de WEEKDAY est la possibilité de définir quel jour commence la semaine grâce au second paramètre optionnel FirstDayOfWeek. Cela permet de s'adapter à des contextes culturels ou professionnels différents : par exemple, une semaine commençant le dimanche aux États-Unis ou le lundi en Europe.
- Retourne une valeur numérique, pas une chaîne : Contrairement à ce que l'on pourrait attendre, WEEKDAY ne retourne pas directement le nom du jour (comme "Lundi"), mais un entier entre 1 et 7. Il faut donc utiliser une correspondance (via un tableau ou un Select Case) pour afficher le jour en clair. Cela rend son usage plus flexible mais demande une étape de traitement supplémentaire.
- Indispensable pour les règles de gestion liées aux jours ouvrés ou fériés : La fonction permet de facilement exclure les week-ends ou de déclencher des actions spécifiques selon le jour. Par exemple, on peut désactiver certains traitements si la date tombe un samedi ou un dimanche, ou encore appliquer des règles tarifaires selon les jours. Cela en fait un outil clé dans les applications métier.
- Peut être combinée avec d'autres fonctions de date pour une analyse complète : WEEKDAY fonctionne très bien avec d'autres fonctions comme DATEADD, DATEDIFF, ou NOW, ce qui permet de construire des logiques complexes autour des dates. Par exemple, on peut calculer si une date est à X jours ouvrés d'aujourd'hui, ou déterminer le prochain lundi à partir d'une date donnée.
- Fonctionne aussi bien avec des constantes qu'avec des expressions de date : La fonction accepte aussi bien des dates littérales (comme #01/05/2025#) que des expressions dynamiques (comme Date() ou des résultats de calculs). Cela permet de l'utiliser dans un large éventail de situations sans contrainte sur la source de la date, ce qui améliore sa souplesse d'intégration dans le code.
- Peut produire des résultats différents selon la valeur de FirstDayOfWeek : Il est important de noter que le jour retourné par WEEKDAY dépend de la configuration du premier jour de la semaine. Par exemple, une même date pourra retourner 1 si FirstDayOfWeek = vbMonday, ou 7 si FirstDayOfWeek = vbSunday. Cela nécessite de bien documenter les hypothèses faites dans le code.
- Utile pour l'affichage dynamique et les règles contextuelles : Grâce à WEEKDAY, il devient possible d'afficher dynamiquement des messages ou de formater du contenu en fonction du jour courant. Par exemple, un site peut souhaiter afficher une offre spéciale uniquement le mercredi, ou envoyer un rappel chaque vendredi. Cette capacité de ciblage temporel enrichit l'interactivité des applications ASP.
Exemple
Voici un exemple d'une utilisation typique de cette fonction :
- <%
- Response.Write "WeekDay(""2010-01-09"",1)=" & WeekDay("2010-01-09",1) & "<br />"
- Response.Write "WeekDay(""2010-01-09 05:30:00"",2)=" & WeekDay("2010-01-09 05:30:00",2) & "<br />"
- Response.Write "WeekDay(""2010-01-09"",3)=" & WeekDay("2010-01-09",3) & "<br />"
- Response.Write "WeekDay(""2010-01-09 05:30:00"",4)=" & WeekDay("2010-01-09 05:30:00",4) & "<br />"
- Response.Write "WeekDay(""2010-01-09"",5)=" & WeekDay("2010-01-09",5) & "<br />"
- Response.Write "WeekDay(""2010-01-09 05:30:00"",6)=" & WeekDay("2010-01-09 05:30:00",6) & "<br />"
- Response.Write "WeekDay(""2010-01-09"",7)=" & WeekDay("2010-01-09",7) & "<br />"
- Response.Write "WeekDay(""2010-01-09"",vbSunday)=" & WeekDay("2010-01-09",vbSunday) & "<br />"
- Response.Write "WeekDay(""2010-01-09"",vbMonday)=" & WeekDay("2010-01-09",vbMonday) & "<br />"
- Response.Write "WeekDay(""2010-01-09"",vbMonday)=" & WeekDay("2010-01-09",vbTuesday ) & "<br />"
- %>
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
Voir également
Articles - Les géants de l'informatique - Microsoft
Dernière mise à jour : Vendredi, le 10 octobre 2014