Fonction DatePart() buggée au 01/01/2006 ?
Bonjour,
J'ai une appliquation de gestion des temps des salariés à maintenir, et je me suis rendu compte d'un bugg étrange avec la fonction DatePart au sujet du premier janvier 2006.
Si j'utilise le code suivant pour récupérer le numéro de la semaine du premier janvier 2006 ça marche bien :
Code:
VSem = DatePart("ww", VJour, vbMonday, vbFirstFourDays)
Il me donne la semaine 52, en effet le 01/01/2006 est le dernier jour de la semaine 52 de 2005.
Par contre quand je veux qu'il me donne l'année :
Code:
VAn = DatePart("yyyy", VJour, vbMonday, vbFirstFourDays)
Il me donne 2006 !
Donc selon cette fonction, le 01/01/2006 est le 7 ème jour de la 52 ème semaine de 2006 !!!
Il n'y a pas comme un problème là ?
Est ce que c'est moi qui raisonne bizarrement ou est ce que c'est cette fonction qui est incohérente ?
Re: Fonction DatePart() buggée au 01/01/2006 ?
Citation:
Envoyé par infosorome
Il me donne la semaine 52, en effet le 01/01/2006 est le dernier jour de la semaine 52 de 2005.
Par contre quand je veux qu'il me donne l'année :
Code:
VAn = DatePart("yyyy", VJour, vbMonday, vbFirstFourDays)
Il me donne 2006 !
Donc selon cette fonction, le 01/01/2006 est le 7 ème jour de la 52 ème semaine de 2006 !!!
Il n'y a pas comme un problème là ?
Est ce que c'est moi qui raisonne bizarrement ou est ce que c'est cette fonction qui est incohérente ?
le 1/1/2006 est un dimanche
en france le premier jour de la semaine est un lundi
la première semaine de l'année est celle contenant le premier jeudi
elle va donc du lundi 2 au dimanche 8
le 1/1/2005 appartient bien aux semaines de 2005