[VBScript] numéro de semaine
Résolu
Dinheru
Messages postés
1019
Date d'inscription
Statut
Membre
Dernière intervention
-
babou -
babou -
Bonjour a tous et toutes !! C'est encore moi !! ^^
Voila ce coup-ci je voudrais savoir si il existe une fonction de VBScript qui retourne le numéro de semaine en cours.
J'ai déja trouvé pour :
- le jour -->
- le mois -->
- l'année -->
Est-ce qu'il existe une fonction dans le genre :
Voila merci d'avance !!
Voila ce coup-ci je voudrais savoir si il existe une fonction de VBScript qui retourne le numéro de semaine en cours.
J'ai déja trouvé pour :
- le jour -->
jour = day(now)
- le mois -->
mois = month(now)
- l'année -->
annee = year(now)
Est-ce qu'il existe une fonction dans le genre :
semaine=week(now)( Mais ça, ça marche pô !! )
Voila merci d'avance !!
A voir également:
- Vba numéro de semaine
- Numero prive - Guide
- Numéro père noël whatsapp - Accueil - Messagerie instantanée
- Numero de serie idm ✓ - Forum Logiciels
- Numéro symbole ✓ - Forum Word
- Trouver le numéro de quelqu'un avec son snap - Forum Snapchat
8 réponses
Plus simple que ca, on peut utiliser la version format présente dans VBA, qui peut se conformer à la norme iso.
Exemple:
Dans ce cas, Format renvoie 29, ce qui est la bonne réponse.
L'argument vbMonday définit le premier jour de la semaine (selon la norme, Lundi, mais dimanche par défaut pour VBA si l'argument est omis) et vbFirstFourDays définit que la semaine n°1 est la première semaine contenant au moins 4 jour (soit la semaine contenant le 1er jeudi de l'année, c'est équivalent; si l'argument est omis, VBA considère que c'est la semaine du 1er janvier, ce qui n'est pas toujours exact)
On peut bien sur utiliser des variables pour définir la date, en utilisant la fonction CDate:
On peut aussi n'utiliser que les 2 derniers chiffres de l'année, VBA considère alors que l'année est comprise entre 1930 et 2029
Note à part, la fonction Format permet de mettre en forme une date (entre autres), c'est l'argument "ww" qui fait qu'il renvoie le numéro de la semaine. En le remplacant par exemple par "dddd d mmmm yyyy", la fonction retourne dans notre exemple "vendredi 32 juillet 2010"
Exemple:
Dim datetest, semaine datetest = #23/7/2010# semaine = Format(datetest, "ww", vbMonday, vbFirstFourDays)
Dans ce cas, Format renvoie 29, ce qui est la bonne réponse.
L'argument vbMonday définit le premier jour de la semaine (selon la norme, Lundi, mais dimanche par défaut pour VBA si l'argument est omis) et vbFirstFourDays définit que la semaine n°1 est la première semaine contenant au moins 4 jour (soit la semaine contenant le 1er jeudi de l'année, c'est équivalent; si l'argument est omis, VBA considère que c'est la semaine du 1er janvier, ce qui n'est pas toujours exact)
On peut bien sur utiliser des variables pour définir la date, en utilisant la fonction CDate:
Dim jour, mois, annee Dim datetest, semaine jour = 23 mois = 7 annee = 2010 datetest = CDate(jour & "/" & mois & "/" & annee) semaine = Format(datetest, "ww", vbMonday, vbFirstFourDays)
On peut aussi n'utiliser que les 2 derniers chiffres de l'année, VBA considère alors que l'année est comprise entre 1930 et 2029
Note à part, la fonction Format permet de mettre en forme une date (entre autres), c'est l'argument "ww" qui fait qu'il renvoie le numéro de la semaine. En le remplacant par exemple par "dddd d mmmm yyyy", la fonction retourne dans notre exemple "vendredi 32 juillet 2010"
semaine = Format(DD, "ww", vbMonday, vbFirstJan1)