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 :

Pb de Format dans Userform [XL-2003]


Sujet :

Macros et VBA Excel

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Expert confirmé
    Avatar de MarcelG
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Juillet 2009
    Messages
    3 449
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 67
    Localisation : France, Maine et Loire (Pays de la Loire)

    Informations professionnelles :
    Activité : Développeur informatique
    Secteur : Finance

    Informations forums :
    Inscription : Juillet 2009
    Messages : 3 449
    Billets dans le blog
    7
    Par défaut Pb de Format dans Userform
    Bonjour à tous,
    J'ai un userform dont certains contrôles Textbox.
    J'ai forcé le format (monétaire, date...) de ceux-ci par la solution "classique"
    Private Sub Textbox_Exit(ByVal Cancel As MSForms.ReturnBoolean)
    exemple
    Textbox1.value = Format(Textbox.value,"dd mmmm yy")
    ou bien
    Textbox2.value = Format(Textbox.value,"# ##0.00")
    etc...
    Le problème est que si j'envoie une valeur de Textbox1, le format s'affiche correctement (par exemple en date). Mais dès que je sors de Textbox2 alors le format de Textbox1 disparaît !!??
    Je galère sur mon code depuis quelques heures (vérification des Tabindex...)
    mais je n'arrive pas à m'expliquer cette anomalie.
    Quelqu'un a-t-il une explication ? Merci pour votre aide. Cordialement.

  2. #2
    Membre confirmé
    Inscrit en
    Mars 2005
    Messages
    138
    Détails du profil
    Informations forums :
    Inscription : Mars 2005
    Messages : 138
    Par défaut
    Et ben c'est pas très clair tout ça...

    Qui est TextBox dans ton form ? un troisième TextBox ?

    Qu'entends-tu par envoyer une valeur de TextBox1 ?

    Passe nous ton code, ce sera plus clair

  3. #3
    Expert confirmé
    Avatar de MarcelG
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Juillet 2009
    Messages
    3 449
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 67
    Localisation : France, Maine et Loire (Pays de la Loire)

    Informations professionnelles :
    Activité : Développeur informatique
    Secteur : Finance

    Informations forums :
    Inscription : Juillet 2009
    Messages : 3 449
    Billets dans le blog
    7
    Par défaut
    Ce que j'ai voulu dire dans mon exemple.
    Le formatage, dans mon usf de tous les Textbox commencent par cette procédure évènementielle
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    Private Sub Textbox_Exit.......etc 
    Textbox.value=Format(Textbox.Value, etc
    End Sub
    (Ici Textbox représente les Textbox en général, tels que je les ai formatés en monétaire ou en date)
    Pus j'ai donné 2 exemples Textbox1 et Textbox2
    Dans mon userform, si j'entre une valeur dans Textbox1 exemple 13/8/9 alors, après la touche Entrée activée, l'userform affiche 13 Août 2009. Très bien.
    Si j'entre une valeur en Textbox2 exemple 500, l'userform affiche 500 €. Très bien, mais le problème est que, dès cette donnée entrée, le 1er Textbox s'affiche 13/08/2009.
    En espérant m'être mieux exprimé. Merci

  4. #4
    Membre confirmé
    Inscrit en
    Mars 2005
    Messages
    138
    Détails du profil
    Informations forums :
    Inscription : Mars 2005
    Messages : 138
    Par défaut
    Voilà un code qui fonctionne

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    Private Sub TextBox1_Exit(ByVal Cancel As MSForms.ReturnBoolean)
    TextBox1.Value = Format(TextBox1.Value, "dd mmmm yy")
    End Sub

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    Private Sub TextBox2_Exit(ByVal Cancel As MSForms.ReturnBoolean)
    TextBox2.Value = Format(TextBox2.Value, "# ##0.00")
    End Sub

  5. #5
    Expert confirmé
    Avatar de MarcelG
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Juillet 2009
    Messages
    3 449
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 67
    Localisation : France, Maine et Loire (Pays de la Loire)

    Informations professionnelles :
    Activité : Développeur informatique
    Secteur : Finance

    Informations forums :
    Inscription : Juillet 2009
    Messages : 3 449
    Billets dans le blog
    7
    Par défaut
    Merci.
    Mais c'est justement le type de code que j'ai adopté.
    Je viens de remarquer que c'est le Textbox précédent qui perd son format.
    Si j'entre une valeur en Textbox3, c'est le Textbox2 qui perd son format.
    Ce pb doit survenir d'une autre raison. Cordialement.

  6. #6
    Membre confirmé
    Inscrit en
    Mars 2005
    Messages
    138
    Détails du profil
    Informations forums :
    Inscription : Mars 2005
    Messages : 138
    Par défaut
    1/

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    'Mon code
    TextBox1.Value = Format(TextBox1.Value, "dd mmmm yy")
    N'est pas la même chose que
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    'Ton code
    Textbox1.value = Format(Textbox.value,"dd mmmm yy")
    2/ Où se trouve tes private sub ? Ils devraient être dans le module de ton userform

    3/ j'ai testé et ça fonctionne

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

Discussions similaires

  1. [WD-2007] format de date dans USERFORM
    Par Jumanji dans le forum VBA Word
    Réponses: 6
    Dernier message: 21/01/2012, 15h57
  2. [XL-2003] Problème de formats dans un userform
    Par MarcelG dans le forum Macros et VBA Excel
    Réponses: 10
    Dernier message: 30/03/2010, 14h18
  3. Format de données dans userform
    Par _Nimy_ dans le forum Macros et VBA Excel
    Réponses: 5
    Dernier message: 14/03/2008, 10h16
  4. Formater um Textbox dans UserForm
    Par A@Lah dans le forum Word
    Réponses: 1
    Dernier message: 17/10/2007, 14h40
  5. format heure dans userform
    Par maoricio dans le forum Macros et VBA Excel
    Réponses: 17
    Dernier message: 25/08/2007, 13h00

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