IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

VB 6 et antérieur Discussion :

Fonction DatePart() buggée au 01/01/2006 ?


Sujet :

VB 6 et antérieur

  1. #1
    Futur Membre du Club
    Inscrit en
    Avril 2005
    Messages
    7
    Détails du profil
    Informations forums :
    Inscription : Avril 2005
    Messages : 7
    Points : 7
    Points
    7
    Par défaut 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 : Sélectionner tout - Visualiser dans une fenêtre à part
    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 : Sélectionner tout - Visualiser dans une fenêtre à part
    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 ?

  2. #2
    Inactif  
    Avatar de ouskel'n'or
    Profil pro
    Inscrit en
    Février 2005
    Messages
    12 464
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Février 2005
    Messages : 12 464
    Points : 15 546
    Points
    15 546
    Par défaut
    Non, je ne crois pas. Dans
    VAn = DatePart("yyyy", VJour, vbMonday, vbFirstFourDays)
    yyyy est ton année, l'intervale, or, dans une année, si tu veux connaître le jour de la semaine de cet intervale, ça fait un an... ou 52 semaines... et comme tu demande le jour de la fin de l'intervale, tu tombes sur le septième jour, celui où Dieu se reposa...

    Regarde dans l'aide, elle est de bon conseil... Si tu ne l'as pas, tu dis, je te la passerai.

    A+

  3. #3
    Expert confirmé

    Profil pro
    Inscrit en
    Mai 2005
    Messages
    3 419
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mai 2005
    Messages : 3 419
    Points : 4 297
    Points
    4 297
    Par défaut 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 : Sélectionner tout - Visualiser dans une fenêtre à part
    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

Discussions similaires

  1. [CR XI] Fonction DatePart retourne une erreur
    Par Gdf.pdo dans le forum SAP Crystal Reports
    Réponses: 1
    Dernier message: 22/04/2010, 19h10
  2. la fonction DatePart incompatibilité de type
    Par adriennoob dans le forum Macros et VBA Excel
    Réponses: 6
    Dernier message: 19/04/2010, 18h39
  3. [SP-2007] XSL : Fonction URLLookup buggée ?
    Par nonoxp dans le forum SharePoint
    Réponses: 0
    Dernier message: 24/03/2010, 11h19
  4. Débutant - Fonction qui bugge
    Par BomberSheep dans le forum Macros et VBA Excel
    Réponses: 5
    Dernier message: 21/02/2010, 23h13
  5. Support sur fonction DatePart
    Par Mendes dans le forum Access
    Réponses: 2
    Dernier message: 24/07/2006, 13h35

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo