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

Access Discussion :

format de date retour d'un contrôle calendrier


Sujet :

Access

  1. #1
    Membre du Club
    Profil pro
    Inscrit en
    Novembre 2005
    Messages
    114
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Novembre 2005
    Messages : 114
    Points : 61
    Points
    61
    Par défaut format de date retour d'un contrôle calendrier
    Bonjour

    Je n'arrive pas à formater une date dans une zone de texte, provenant d'un contrôle calendrier. La propriété "masque de saisie" ne s'applique pas lorsqu'on ne tape pas la date. J'ai bien essayé de formater la date dans le calendrier avec format(me.calendar.value,'mm/yyy') mais çà ne fonctionne pas, ce qui est logique : à mon avis il serait plus judicieux de le programmer dans la zone de destination, mais sur quel évènement ? Déjà, est-ce que cette fonction est la plus appropriée ?
    Merci d'avance pour le tuyau...

  2. #2
    Expert éminent
    Avatar de Lou Pitchoun
    Profil pro
    Inscrit en
    Février 2005
    Messages
    5 038
    Détails du profil
    Informations personnelles :
    Âge : 46
    Localisation : France, Bouches du Rhône (Provence Alpes Côte d'Azur)

    Informations forums :
    Inscription : Février 2005
    Messages : 5 038
    Points : 8 268
    Points
    8 268
    Par défaut
    Salut
    Citation Envoyé par patbeautifulday1
    J'ai bien essayé de formater la date dans le calendrier avec format(me.calendar.value,'mm/yyy') mais çà ne fonctionne pas,
    Je ne crois pas que ça marche comme ça.. surtout avec cette syntaxe.

    Essaie
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    Me.Mazonedetexte = Format(me.Calendar.Value,"mm/yyyy")
    ou
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    Me.Mazonedetexte = Format(me.Calendar.Value,"mm/yy")
    A toi de voir si tu mets ce code quand le calendrier perd le focus ou sur clic d'un bouton ou etc...

  3. #3
    Membre éprouvé Avatar de jean-paul lepetit
    Inscrit en
    Février 2005
    Messages
    842
    Détails du profil
    Informations personnelles :
    Âge : 68

    Informations forums :
    Inscription : Février 2005
    Messages : 842
    Points : 919
    Points
    919
    Par défaut
    Salut,

    Essaies ceci
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    Private Sub CtlActiveX0_Click()
    Texte1.Value = Format(CtlActiveX0, "mm/yyyy")
     
    End Sub
    Ils ne savaient pas que c'était impossible, alors il le réalisèrent (Mark Twain)

  4. #4
    Membre du Club
    Profil pro
    Inscrit en
    Novembre 2005
    Messages
    114
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Novembre 2005
    Messages : 114
    Points : 61
    Points
    61
    Par défaut
    OK, j'ai essayé, mais çà affiche "01/01/2006" quand je clique sur "30/01/2006" par exemple. Je comprends qu'il renvoie la valeur du début de mois quand on applique la fonction format telle que je l'ai codée, mais maintenant je cherche à afficher dans ma zone de destination "01/2006"

  5. #5
    Expert éminent
    Avatar de Lou Pitchoun
    Profil pro
    Inscrit en
    Février 2005
    Messages
    5 038
    Détails du profil
    Informations personnelles :
    Âge : 46
    Localisation : France, Bouches du Rhône (Provence Alpes Côte d'Azur)

    Informations forums :
    Inscription : Février 2005
    Messages : 5 038
    Points : 8 268
    Points
    8 268
    Par défaut
    Citation Envoyé par patbeautifulday1
    OK, j'ai essayé, mais çà affiche "01/01/2006" quand je clique sur "30/01/2006" par exemple. Je comprends qu'il renvoie la valeur du début de mois quand on applique la fonction format telle que je l'ai codée,
    Comment ça peut afficher 01/01/2006 si tu utilises le format "mm/yyyy" ??
    mais maintenant je cherche à afficher dans ma zone de destination "01/2006"
    Et ??? les réponses ne sont pas suffisantes ?

  6. #6
    Membre du Club
    Profil pro
    Inscrit en
    Novembre 2005
    Messages
    114
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Novembre 2005
    Messages : 114
    Points : 61
    Points
    61
    Par défaut
    Ne nous énervons pas... Je cherche seulement à comprendre pourquoi çà ne fonctionne pas.
    Je récapitule : j'ai un formulaire de départ avec une zone de texte dans laquelle je veux afficher une date du style janvier 2006 ou 01/2006. A côté j'ai un bouton pour ouvrir un formulaire avec un contrôle calendrier, dans lequel je passe en openargs nomform!nomcontrole!formatdate. Au retour, le formulaire me renvoie une valeur date, sur laquelle j'ai appliqué la fonction format. Mon contrôle destinataire lui, n'a pas de format défini (d'ailleurs il n'a pas le format prédéfini que je désire mm/yyyy ou mmm/yyyy). La solution serait peut-être finalement de définir un format désiré dans le contrôle destinataire, mais comment le faire en VBA ?

  7. #7
    Membre éprouvé Avatar de jean-paul lepetit
    Inscrit en
    Février 2005
    Messages
    842
    Détails du profil
    Informations personnelles :
    Âge : 68

    Informations forums :
    Inscription : Février 2005
    Messages : 842
    Points : 919
    Points
    919
    Par défaut
    si ton controle texte est dans le formulaire F1

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    Private Sub CtlActiveX0_Click()
    Forms!F1!Texte1.Value = Format(CtlActiveX0, "mm/yyyy")
     
    End Sub
    Ils ne savaient pas que c'était impossible, alors il le réalisèrent (Mark Twain)

  8. #8
    Membre du Club
    Profil pro
    Inscrit en
    Novembre 2005
    Messages
    114
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Novembre 2005
    Messages : 114
    Points : 61
    Points
    61
    Par défaut
    Voici mon code sur le formulaire calendrier (calendar0) :
    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
    Dim var1, var2, var3 As String
    Dim dt As Date
        Dim tableau() As String
        If IsNull(Me.OpenArgs) = False Then
        'MsgBox Me.OpenArgs
        tableau = Split(Me.OpenArgs, "!")
        var1 = tableau(0)
        var2 = tableau(1)
        var3 = tableau(2)
                'MsgBox ("tableau(0) = " & var1)
                'MsgBox ("tableau(1) = " & var2)
                'MsgBox ("tableau(2) = " & var3)
                If IsNull(var3) = False Then
                    Forms(var1)(var2) = format(Me!Calendar0.Value, var3)
                    Else
                    Forms(var1)(var2) = Me!Calendar0.Value
                End If
     
        End If
    ' Fermer le formulaire
    DoCmd.Close
    çà fonctionne bien
    Maintenant si j'ai en openargs par exemple "projet!début!mmmm/yyyy", j'ai dans mon contrôle "début", la date 01/01/2006 pour par exemple un choix de 25/01/2006.
    Mais j'ai trouvé la soluce : il suffit de paramétrer le format mmmm\ aaaa dans les propriétés de la zone de texte, et c'est bon. Finalement, c'était sur le contrôle destinataire qu'il fallait agir et non sur le formulaire calendrier, d'où ma question de départ...
    Et désolé d'être un peu "boulet" par moment, mais j'aime comprendre les choses de façon claire et exacte. Vous ne m'en voudrez pas...
    En tous cas merci à tous, qui avez fait avancer mon "schmilblick"
    @ ++

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. Format de date d'un calendrier
    Par tony7 dans le forum Général JavaScript
    Réponses: 3
    Dernier message: 29/04/2013, 11h55
  2. Fonction pour contrôle de format de date
    Par veve4work dans le forum Développement
    Réponses: 5
    Dernier message: 07/03/2012, 12h04
  3. contrôle calendrier + format date
    Par chris67 dans le forum Macros et VBA Excel
    Réponses: 3
    Dernier message: 08/07/2008, 10h02
  4. Format date retouré par Proc Stoc
    Par kaboume dans le forum MS SQL Server
    Réponses: 2
    Dernier message: 13/07/2007, 14h57
  5. Réponses: 3
    Dernier message: 06/05/2002, 18h24

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