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

Macros et VBA Excel Discussion :

Date : Masque de saisie


Sujet :

Macros et VBA Excel

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre confirmé
    Inscrit en
    Janvier 2008
    Messages
    76
    Détails du profil
    Informations forums :
    Inscription : Janvier 2008
    Messages : 76
    Par défaut Date : Masque de saisie
    Bonjour,

    j'ai lu le tutoriel sur les date (bon travail didier). Cependant, je n'ai rien trouvé concernant la mise en place d'un masque de saisie avant la saisie de la date.

    style : __/__/____ => "dd/mm/yyyy"

    Une idée? Excel le fait très bien, access aussi. Toutefois, lorsque je souhaite insérer ce masque dans le formulaire je n'y arrive pas. Voici ce que j'ai fabriqué :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    joining_date_employee = Format(UserForm2.TextBox3, "dd/mm/yyyy")
    Si, je le place avant l'écriture de la date => Objet requis
    Si, je le place après l'écriture de la date => La macro fonctionne.

    Mais l'objectif est de forcer la saisie sous un masque précis.

    Merci d'avance,

  2. #2
    Expert confirmé
    Avatar de Didier Gonard
    Homme Profil pro
    Formateur Office et développeur VBA en freelance
    Inscrit en
    Février 2008
    Messages
    2 805
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Loire Atlantique (Pays de la Loire)

    Informations professionnelles :
    Activité : Formateur Office et développeur VBA en freelance

    Informations forums :
    Inscription : Février 2008
    Messages : 2 805
    Par défaut
    bonjour,

    une piste traitée sur le forum était de faire 3 textbox jours, mois années, tu fais des filtres de validité sur chacun et tu assembles le tout pour construire ta date en vérifiant que l'ensemble corresponde à une date valide.

    tu peux regarder l'approche de la saisie contrôlée ici, le fond est le même.

    Sinon une bonne chose est d'utiliser un contrôle date, mais vu que c'est traité dans le tuto que tu cites....

    cordialement,

    Didier

  3. #3
    Membre confirmé
    Inscrit en
    Janvier 2008
    Messages
    76
    Détails du profil
    Informations forums :
    Inscription : Janvier 2008
    Messages : 76
    Par défaut
    une piste traitée sur le forum était de faire 3 textbox jours, mois années, tu fais des filtres de validité sur chacun et tu assembles le tout pour construire ta date en vérifiant que l'ensemble corresponde à une date valide.
    Ca me parait compliqué et lourd comme idée ... Je vais continuer à chercher.

  4. #4
    Membre éclairé
    Inscrit en
    Octobre 2008
    Messages
    240
    Détails du profil
    Informations forums :
    Inscription : Octobre 2008
    Messages : 240
    Par défaut
    Bonjour,

    Voici un bout de code pour commencer:

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    Private Sub TxtDate_Change()
    Dim Valeur As Byte
    With frm
        .txtDate.MaxLength = 10 'nb caractères maxi autorisé dans le textbox
        Valeur = Len(.txtDateReception)
        If Valeur = 2 Then .txtDateReception = .txtDateReception & "/"
        If Valeur = 5 Then .txtDateReception = .txtDateReception & "/20"
    End With
    End Sub

  5. #5
    Expert éminent Avatar de mercatog
    Homme Profil pro
    Inscrit en
    Juillet 2008
    Messages
    9 435
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Autre

    Informations forums :
    Inscription : Juillet 2008
    Messages : 9 435
    Par défaut
    Utiliser un contrôle DtPicker ou monthview
    Ils sont faits pour ça.

  6. #6
    Membre confirmé
    Inscrit en
    Janvier 2008
    Messages
    76
    Détails du profil
    Informations forums :
    Inscription : Janvier 2008
    Messages : 76
    Par défaut
    Citation Envoyé par mercatog Voir le message
    Utiliser un contrôle DtPicker ou monthview
    Ils sont faits pour ça.
    Mercatog, est-ce que tu as infos ou être un peu plus précis dans le domaine? Je débute, alors c'est comme parler l'Urdo tu vois... Qu'est qu'un DtPicker?

    neiluj26, voici ce que j'ai utilisé:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    Private Sub TextBox3_Change()
     TextBox3.MaxLength = 10 'nb caractères maxi autorisé dans le textbox
        Valeur = Len(TextBox3)
        If Valeur = 2 Or Valeur = 5 Then TextBox3 = TextBox3 & "/"
    End Sub
    Cependant, ça ne me convient pas... Mais au moins ça marche.

  7. #7
    Expert confirmé
    Avatar de Didier Gonard
    Homme Profil pro
    Formateur Office et développeur VBA en freelance
    Inscrit en
    Février 2008
    Messages
    2 805
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Loire Atlantique (Pays de la Loire)

    Informations professionnelles :
    Activité : Formateur Office et développeur VBA en freelance

    Informations forums :
    Inscription : Février 2008
    Messages : 2 805
    Par défaut
    Citation Envoyé par Ormonth Voir le message
    bonjour,

    Sinon une bonne chose est d'utiliser un contrôle date, mais vu que c'est traité dans le tuto que tu cites....

    cordialement,

    Didier
    Citation Envoyé par TonyRc
    j'ai lu le tutoriel sur les date (bon travail didier). Cependant, je n'ai rien trouvé concernant la mise en place d'un masque de saisie avant la saisie de la date.
    tu as lu jusqu'au bout

  8. #8
    Expert éminent Avatar de mercatog
    Homme Profil pro
    Inscrit en
    Juillet 2008
    Messages
    9 435
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Autre

    Informations forums :
    Inscription : Juillet 2008
    Messages : 9 435
    Par défaut
    Bonjour,
    Regarde ce tutoriel concernant les contrôles calendrier

Discussions similaires

  1. Réponses: 0
    Dernier message: 28/10/2007, 20h11
  2. clause sql sur champ Date avec masque de saisie
    Par TOMSEC dans le forum Requêtes et SQL.
    Réponses: 1
    Dernier message: 05/04/2007, 12h20
  3. Masque de saisie texte+date
    Par Thibaut_Dupont dans le forum Access
    Réponses: 6
    Dernier message: 02/08/2006, 14h39
  4. [Débutant] =Maintenant() avec un masque de saisie date
    Par 512banque dans le forum Access
    Réponses: 4
    Dernier message: 05/07/2006, 16h38
  5. masque de saisie date du genre Avr 06
    Par fscli dans le forum Access
    Réponses: 4
    Dernier message: 22/05/2006, 16h52

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