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 :

[VBA-EXCEL] - Quitter un contrôle


Sujet :

Macros et VBA Excel

  1. #1
    Invité
    Invité(e)
    Par défaut [VBA-EXCEL] - Quitter un contrôle
    Bonjour à tous

    Voilà mon problème

    Sur un controle textbox j'ai sur l'évènement EXIT un contrôle de validité des données, celui-ci marche correctement.

    Je ne peux le quitter que lorsque la donnée est correct

    Par contre lorsque je ferme la feuille (par la croix), il me marque quand même mon message d'erreur lorsque la feuille se ferme, ce qui est normal car l'évènement EXIT a eut lieu. De même si je crée un bouton fermer.

    Comment éviter cela ?

    Merci à tous

    Starec

  2. #2
    Invité
    Invité(e)
    Par défaut
    Re

    Cela m'étonne que personne n'est eut le soucis, c'est très génant en fonctionnement.

    Où comment donner la priorité à la fermeture de la form par la croix, par rapport aux autres contrôles.

    Merci

    Starec

  3. #3
    Membre à l'essai Avatar de alex_elder1_1
    Profil pro
    Étudiant
    Inscrit en
    Novembre 2006
    Messages
    82
    Détails du profil
    Informations personnelles :
    Âge : 37
    Localisation : France, Gironde (Aquitaine)

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Novembre 2006
    Messages : 82
    Points : 24
    Points
    24
    Par défaut
    As tu mis une boucle lui demandant de redemander ta donnee si elle est aps bonne
    de reaparaitre en quelque sorte

  4. #4
    Inactif  
    Avatar de ouskel'n'or
    Profil pro
    Inscrit en
    Février 2005
    Messages
    12 464
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Février 2005
    Messages : 12 464
    Points : 15 546
    Points
    15 546
    Par défaut
    Utilise un boolean déclaré en tête du code de l'userform, par exemple
    Dans ton textbox, teste le boolean avant dans ta boucle de vérification de la saisie
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    Sub CommandButton_Exit(..............)
    If not Quitter then
            'ton code actuel
            '.....
         else
            exit sub
    endif
    Et, sous le clic de ton bouton Quitter, mets
    A+
    Edit
    Oui, j'ai fait une bourde, comme le dit bbil c'est bien sûr dans Textbox_exit que doit être mis le code ci-dessus, pas dans le bouton

  5. #5
    Invité
    Invité(e)
    Par défaut
    Re

    J'ai testé ta solution Ouskelnor, cela ne fontionne pas, car le problème c'est que lorsque je cliquer sur Quitter, cela enclenche l'évènement EXIT de ma textbox où il y'a le contrôle de saisie. Donc message

    Starec

  6. #6
    Expert éminent sénior


    Profil pro
    Inscrit en
    Juin 2003
    Messages
    14 008
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juin 2003
    Messages : 14 008
    Points : 20 040
    Points
    20 040
    Par défaut
    le code à Ousk' Avec le test du bit Quitter et à implémenter dans l'exit de ton textbox...

    et pour mettre ce bit à 1 au moment de quitter :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
     
    Dim Quitter as boolean
    Private Sub UserForm_QueryClose(Cancel As Integer, CloseMode As Integer)
     Quitter = True
    End Sub
    Private Sub TextBox1_Exit(ByVal Cancel As MSForms.ReturnBoolean)
     If Not Quitter Then
       If TextBox1 = "" Then 'par exemple test si text box1 <> ""
        MsgBox " Valeur TextBox1 erroné"
       End If
     End If
    End Sub

  7. #7
    Invité
    Invité(e)
    Par défaut
    Re,

    Cela fonctionne, merci à tous

    Starec

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

Discussions similaires

  1. [XL-2003] VBA excel problème sur contrôle statusbar
    Par wolop dans le forum Macros et VBA Excel
    Réponses: 0
    Dernier message: 26/08/2009, 15h07
  2. Contrôle d'un document Word avec VBA Excel
    Par wsl1912 dans le forum Macros et VBA Excel
    Réponses: 0
    Dernier message: 03/01/2008, 10h06
  3. Liste des contrôles dans VBA-Excel
    Par CAFOUIN dans le forum Excel
    Réponses: 2
    Dernier message: 23/02/2007, 17h50
  4. [VBA Excel] Quitter le formulaire actuel
    Par loacast dans le forum Macros et VBA Excel
    Réponses: 6
    Dernier message: 01/03/2006, 18h57
  5. [VBA Excel] Créer plusieurs contrôles dynamiquement
    Par loacast dans le forum Macros et VBA Excel
    Réponses: 10
    Dernier message: 08/12/2005, 17h27

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