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 :

Sortir d'une textbox [XL-2003]


Sujet :

Macros et VBA Excel

  1. #1
    Membre actif
    Homme Profil pro
    Inscrit en
    Mai 2013
    Messages
    86
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations forums :
    Inscription : Mai 2013
    Messages : 86
    Par défaut Sortir d'une textbox
    Bonjour,

    J'utilise une textbox pour obliger l'utilisateur à saisir une valeur de 10 et 13 caractères.

    J'aimerais toutefois que l'utilisateur puisse cliquer sur un bouton de commande (FERMER) s'il a commencé la saisie mais qu'il change d'avis, à savoir, ressaisir ce numéro un autre jour.

    L'histoire de l'arroseur arrosé

    Merci pour votre réponse et bonne journée.



    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    'Vérification du numéro d'ISBN (10 ou 13 chiffres)
    Private Sub TxtBoxNISB_BeforeUpdate(ByVal Cancel As MSForms.ReturnBoolean)
    'Si le nombre de chiffres dans la TxtBoxNISN n'est pas égal à 10 et à 13
    If Len(TxtBoxNISB.Value) <> 10 And Len(TxtBoxNISB.Value) <> 13 Then
        'Emettre un bip et afficher un message d'erreur
        Beep
        MsgBox "Le numéro ISBN doit être une valeur numérique de 10 ou 13 chiffres !", , "NUMERO ISBN"
        Cancel = True
    End If

  2. #2
    Invité
    Invité(e)
    Par défaut
    Bonjour,

    Juste comme ça, je passe par hazard.
    Je suis entrain de me demander si la condition "ET" ne devrai pas être une condition "OU" ? Je n'ai rien dis

  3. #3
    Membre actif
    Homme Profil pro
    Inscrit en
    Mai 2013
    Messages
    86
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations forums :
    Inscription : Mai 2013
    Messages : 86
    Par défaut
    Bonjour,

    Merci pour ta réponse mais c'est bien un ET qu'il faut.

    Mais mon problème ne vient pas de là mais du fait qu'il me faille sortir de ma textbox pour cliquer sur un bouton FERMER

  4. #4
    Invité
    Invité(e)
    Par défaut Bonjour, test ça
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    If MsgBox("Le numéro ISBN doit être une valeur numérique de 10 ou 13 chiffres !", vbYesNo, "NUMERO ISBN") = vbYes Then Cancel = True
    ou
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    If trim("" & TxtBoxNISB=<>"" and (Len(TxtBoxNISB.Value) < 10 OR Len(TxtBoxNISB.Value) > 13 ) Then
        'Emettre un bip et afficher un message d'erreur
        Beep
        MsgBox "Le numéro ISBN doit être une valeur numérique de 10 ou 13 chiffres !", , "NUMERO ISBN"
        Cancel = True
    End If
    panachage des 2:
    I
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    f trim("" & TxtBoxNISB=<>"" and (Len(TxtBoxNISB.Value) < 10 OR Len(TxtBoxNISB.Value) > 13 ) Then
        'Emettre un bip et afficher un message d'erreur
        Beep
       If MsgBox("Le numéro ISBN doit être une valeur numérique de 10 ou 13 chiffres !" & vbCrLf & "Voulez-vous le faire quand même.", vbYesNo + vbQuestion, "NUMERO ISBN") = vbYes Then Cancel = True
    End If
    Dernière modification par Invité ; 19/07/2013 à 09h45.

  5. #5
    Membre actif
    Homme Profil pro
    Inscrit en
    Mai 2013
    Messages
    86
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations forums :
    Inscription : Mai 2013
    Messages : 86
    Par défaut
    Bonjour rdurupt,

    Merci pour ta réponse mais je ne souhaite pas que l'utilisateur ait le choix de la longueur de sa saisie.

    En lui permettant de sortir de cette "satanée" textbox, il cliquera sur le bouton FERMER qui annulera sa saisie et fermera la boîte de dialogue.

  6. #6
    Invité
    Invité(e)
    Par défaut
    dans cas, ne fais pas ton contrôle dans TxtBoxNISB_BeforeUpdate, mais sur le bouton valider: donc si il valide le message apparait, si il ferme rien ne s’affiche!
    Fichiers attachés Fichiers attachés
    Dernière modification par Invité ; 19/07/2013 à 09h59.

  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
    Bonjour,

    Les Textbox ont une propriété MaxLength qui sert justement à définir de façon native le nombre maxi de caractères quelles peuvent contenir…

    Si, comme ta question au niveau du bouton quitter semble le sous-entendre, tu utilises un USF juste pour demander le N° ISBN, l’outil le plus approprié serait d’utiliser la Méthode InputBox de l’objet Application qui par défaut :
    - Te permet de définir que c’est un nombre qui est attendu en saisie et envoie un message d'erreur sinon.
    - Comporte un bouton Annuler.

    cordialement,

    Didier

  8. #8
    Membre actif
    Homme Profil pro
    Inscrit en
    Mai 2013
    Messages
    86
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations forums :
    Inscription : Mai 2013
    Messages : 86
    Par défaut
    Effectivement rdurupt, tu as raison, je m'obstine à vérifier la saisie à la sortie de la textbox alors que je peux le faire à la sortie de la boite de dialogue.

    Merci pour ton idée et bonne journée.

    Bonjour Ormonth,

    Merci pour ta réponses mais je n'utilise pas mon USF uniquement avec une seule textbox mais avec plusieurs.

    Merci pour ta réponse et bonne journée.

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

Discussions similaires

  1. [c#]Gros text à afficher dans une textbox
    Par famemaur dans le forum ASP.NET
    Réponses: 3
    Dernier message: 04/05/2005, 10h12
  2. [c#] valider une textbox
    Par tomtom41 dans le forum ASP.NET
    Réponses: 2
    Dernier message: 17/04/2005, 20h30
  3. [HTML/JAVASCRIPT]Sortir d'une iframe
    Par tidou dans le forum Balisage (X)HTML et validation W3C
    Réponses: 2
    Dernier message: 19/01/2005, 15h26
  4. [Threads] Sortir d'une fonction bloquante
    Par guejo dans le forum MFC
    Réponses: 19
    Dernier message: 17/08/2004, 14h12
  5. Comment sortir d'une dll ?
    Par Fred007 dans le forum Langage
    Réponses: 3
    Dernier message: 19/02/2004, 08h21

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