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 :

Focus dans une txtbox


Sujet :

Macros et VBA Excel

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  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 Focus dans une txtbox
    Bonjour,

    Je souhaiterais avoir le focus dans la TxtBoxNISB mais avec l'instruction setfocus cela ne fonctionne pas....

    Quelqu'un pourrait-il m'aider ?

    Merci d'avance.


    --- Mon code ---
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    'Vérification du numèro d'ISBN
    Private Sub TxtBoxNISB_BeforeUpdate(ByVal Cancel As MSForms.ReturnBoolean)
    'Si le nombre de chiffres dans la TxtBoxNISB n'est pas égal à 10 ou à 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"
    TxtBoxNISB.setfocus
    End If
    End Sub

  2. #2
    Membre Expert Avatar de rvtoulon
    Homme Profil pro
    Agent Technique
    Inscrit en
    Mars 2009
    Messages
    1 042
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 49
    Localisation : France, Var (Provence Alpes Côte d'Azur)

    Informations professionnelles :
    Activité : Agent Technique
    Secteur : Santé

    Informations forums :
    Inscription : Mars 2009
    Messages : 1 042
    Par défaut
    Bonjour,
    essai en rajoutant cancel = True :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    Private Sub TxtBoxNISB_BeforeUpdate(ByVal Cancel As MSForms.ReturnBoolean)
    'Si le nombre de chiffres dans la TxtBoxNISB n'est pas égal à 10 ou à 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
    End Sub

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

    Merci RVTOULON pour ta réponse. J'ai déjà testé avec Cancel=true mais je trouve cette solution un peu trop "radicale".
    En effet, l'utilisateur est bloqué à travers cette solution, il ne peut pas sortir de la TxtBoxNISB ni même fermer la userform.

  4. #4
    Expert confirmé Avatar de casefayere
    Homme Profil pro
    RETRAITE
    Inscrit en
    Décembre 2006
    Messages
    5 138
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 71
    Localisation : France, Ardennes (Champagne Ardenne)

    Informations professionnelles :
    Activité : RETRAITE
    Secteur : Agroalimentaire - Agriculture

    Informations forums :
    Inscription : Décembre 2006
    Messages : 5 138
    Par défaut
    Bonsoir,

    la condition, si je comprends est "ou", alors il faut déjà corriger cette ligne :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    'Si le nombre de chiffres dans la TxtBoxNISB n'est pas égal à 10 ou à 13
    If Len(TxtBoxNISB.Value) <> 10 or Len(TxtBoxNISB.Value) <> 13 Then
    Bonne soirée
    Cordialement,
    Dom
    _____________________________________________
    Vous êtes nouveau ? pour baliser votre code, cliquer sur cet exemple : Anomaly
    pensez à cliquer sur :resolu: si votre problème l'est
    Par contre, il est désagréable de voir une discussion résolue sans message final du demandeur (satisfaction, désarroi, remerciement, conclusion...)

  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
    Desole mais mon probleme ne porte que sur le fait de mettre le focus dans la TxtBoxNISB
    Merci quand meme

  6. #6
    Expert confirmé Avatar de casefayere
    Homme Profil pro
    RETRAITE
    Inscrit en
    Décembre 2006
    Messages
    5 138
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 71
    Localisation : France, Ardennes (Champagne Ardenne)

    Informations professionnelles :
    Activité : RETRAITE
    Secteur : Agroalimentaire - Agriculture

    Informations forums :
    Inscription : Décembre 2006
    Messages : 5 138
    Par défaut
    Une idée, au hasard
    je ne sais pas quel est le controle suivant mais en imaginant que c'est un TextBox nommé "TextBox1"

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    Private Sub TextBox1_Enter()
    If Len(TxtBoxNISB.Value) <> 10 Then
     If Len(TxtBoxNISB.Value) <> 13 Then
        Beep
        MsgBox "Le numèro ISBN doit être une valeur numèrique de 10 ou 13 chiffres !", , "NUMERO ISBN"
        TxtBoxNISB.SetFocus
      End If
    End If
    End Sub
    ça pourrait pallier à ton problème mais je doute que ça soit ce que tu cherches
    Cordialement,
    Dom
    _____________________________________________
    Vous êtes nouveau ? pour baliser votre code, cliquer sur cet exemple : Anomaly
    pensez à cliquer sur :resolu: si votre problème l'est
    Par contre, il est désagréable de voir une discussion résolue sans message final du demandeur (satisfaction, désarroi, remerciement, conclusion...)

Discussions similaires

  1. focus dans une cellule d'une JTable
    Par coil dans le forum Composants
    Réponses: 5
    Dernier message: 07/07/2010, 17h15
  2. [AC-2007] Condition sur focus dans une macro
    Par damsmut dans le forum IHM
    Réponses: 6
    Dernier message: 17/12/2009, 15h00
  3. Gestion du focus dans une hiérarchie de contrôles
    Par JolyLoic dans le forum Windows Presentation Foundation
    Réponses: 4
    Dernier message: 29/08/2009, 15h44
  4. Enlever une valeur par défaut dans une txtBox
    Par moilou2 dans le forum IHM
    Réponses: 8
    Dernier message: 09/10/2008, 12h17
  5. Forcer un utilisateur a saisir [a-z] dans une txtbox
    Par fabrice518 dans le forum IHM
    Réponses: 2
    Dernier message: 26/10/2005, 14h29

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