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

IHM Discussion :

[VBA] Pb de format des dates dans un état


Sujet :

IHM

  1. #41
    Membre habitué
    Profil pro
    Inscrit en
    Avril 2005
    Messages
    137
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Avril 2005
    Messages : 137
    Points : 130
    Points
    130
    Par défaut
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
     
    Dim D As Date, NumSemaine As Integer, DateDebut As Date, DateFin As Date
     
    D = Date
    NumSemaine = Format(D, "ww") - 1
     
    ' premier jour de l'année
    D = DateSerial(Annee, 1, 1)
     
    ' numéro de la semaine du 1er janvier
    numS = DatePart("ww", D, vbMonday, vbFirstFourDays)
     
    ' si le 1er janvier fait partie de la dernière semaine de l'année précédente
    ' alors passe à la semaine suivante (la première de la nouvelle année)
    If numS <> 1 Then D = DateAdd("d", 7, D)
     
    ' calcule le premier jour de la première semaine de l'année
    D = DateAdd("d", 1 - Weekday(D, vbMonday), D)
     
    ' ajoute (numSemaine-1)-3 semaines
    DateDebut = DateAdd("ww", NumSemaine - 4, D)
    TxtDebutn3.ControlSource = "=#" & DateDebut & "#"
     
    ' calcule le dernier jour de la première semaine de l'année
    D = DateAdd("d", 5 - Weekday(D, vbMonday), D)
     
    ' ajoute (numSemaine-1)-3 semaines
    DateFin = DateAdd("ww", NumSemaine - 4, D)
    TxtFinn3.ControlSource = "=#" & DateFin & "#"
    je t'ai mis juste les calculs des dates de la semaine n-3.
    j'obtiens 30/05 et 06/03 (avec le format jj/mm pour chacun des textbox), au lieu de 30/05 et 03/06.
    Voilà, je sais pas, peut-etre que j'ai fait une grosse faute de syntaxe ou d'étourderie...

  2. #42
    Membre éprouvé

    Profil pro
    Inscrit en
    Octobre 2003
    Messages
    1 163
    Détails du profil
    Informations personnelles :
    Âge : 39
    Localisation : France

    Informations forums :
    Inscription : Octobre 2003
    Messages : 1 163
    Points : 1 148
    Points
    1 148
    Par défaut
    J'aurais du te demander ton code depuis le début.

    C'est clair que si tu le met dans ControlSource ça va pas marcher...
    Ce que tu mettais dans ControlSource c'était ça (qd tu avait le problème de la division)

    =26/7
    La forcément Access va le calculer puisque c'est ce que tu lui demandes.

    Toi tu veux juste afficher une valeur, pas besoin de passer par la propriété ControlSource, suffit de faire cela à la fin de ton code
    (d'ailleur la variable numS n'était pas déclarée je l'ai rajouté au début) :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    ' ajoute (numSemaine-1)-3 semaines
    DateDebut = DateAdd("ww", NumSemaine - 4, D)
    TxtDebutn3 = Day(DateDebut) & "/" & Month(DateDebut)
     
    ' calcule le dernier jour de la première semaine de l'année
    D = DateAdd("d", 5 - Weekday(D, vbMonday), D)
     
    ' ajoute (numSemaine-1)-3 semaines
    DateFin = DateAdd("ww", NumSemaine - 4, D)
    TxtFinn3 = Day(DateFin) & "/" & Month(DateFin)
    Et là ça marche
    Neilos

  3. #43
    Membre habitué
    Profil pro
    Inscrit en
    Avril 2005
    Messages
    137
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Avril 2005
    Messages : 137
    Points : 130
    Points
    130
    Par défaut
    Pour moi, ça ne marche pas:

    "impossible d'attribuer une valeur à cet objet"

  4. #44
    Membre éprouvé

    Profil pro
    Inscrit en
    Octobre 2003
    Messages
    1 163
    Détails du profil
    Informations personnelles :
    Âge : 39
    Localisation : France

    Informations forums :
    Inscription : Octobre 2003
    Messages : 1 163
    Points : 1 148
    Points
    1 148
    Par défaut
    Si tu as mis ce code dans le OnOpen de ton formulaire ça me fait pareil.
    Je l'ai transféré dans le OnActivate et ça fonctione.
    Neilos

  5. #45
    Membre habitué
    Profil pro
    Inscrit en
    Avril 2005
    Messages
    137
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Avril 2005
    Messages : 137
    Points : 130
    Points
    130
    Par défaut
    Ca y est, ça marche!!!!

    MERCI BEAUCOUP!!!

    J'espère ne pas t'avoir trop monopoliser.


  6. #46
    Membre éprouvé

    Profil pro
    Inscrit en
    Octobre 2003
    Messages
    1 163
    Détails du profil
    Informations personnelles :
    Âge : 39
    Localisation : France

    Informations forums :
    Inscription : Octobre 2003
    Messages : 1 163
    Points : 1 148
    Points
    1 148
    Par défaut
    Non non t'inquiète pas de problème.
    On m'a beaucoup aidé sur le forum donc c'est normal que je fasse de même.

    Par contre j'aurais dû te demander ton code de suite on aurait été plus rapide : jsuis content de voir ce tag résolu.

    @une prochaine
    Neilos

+ Répondre à la discussion
Cette discussion est résolue.
Page 3 sur 3 PremièrePremière 123

Discussions similaires

  1. Changer le format des dates dans une requête SQL
    Par Tazze-99 dans le forum MS SQL Server
    Réponses: 4
    Dernier message: 23/07/2012, 15h09
  2. [WD14] Format de date dans un état
    Par noviceman1 dans le forum WinDev
    Réponses: 8
    Dernier message: 24/01/2012, 18h15
  3. [2.x] Format des dates dans un formulaire
    Par paul01 dans le forum Symfony
    Réponses: 20
    Dernier message: 18/09/2011, 15h05
  4. Forcer le format des dates dans une cellule
    Par cchampion2fr dans le forum Macros et VBA Excel
    Réponses: 7
    Dernier message: 01/10/2008, 13h20

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