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

VBA Word Discussion :

Fonction Change() et Controle ActiveX


Sujet :

VBA Word

  1. #1
    Membre régulier
    Profil pro
    Inscrit en
    Novembre 2007
    Messages
    426
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Novembre 2007
    Messages : 426
    Points : 111
    Points
    111
    Par défaut Fonction Change() et Controle ActiveX
    Bonjour à tous,

    J'ai une TextBoxA en Contrôle ActiveX dans mon document Word. J'ai codé ceci :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    Private Sub TextBoxA_Change()
    If Me.TextBoxA.Value < 20 Then
            Me.TextBoxA.BackColor = vbRed
            If MsgBox("Erreur", vbOKCancel + vbExclamation, "Attention") = vbOK Then
            Me.TextBoxA.BackColor = vbWhite
            Else
            Me.TextBoxA.BackColor = vbRed
            End If
    Else
            Me.TextBoxA.BackColor = vbWhite
    End If
    End Sub
    Le problème est que lorsque je veux taper par exemple "30" : en tapant le "3" en premier alors le code se déclenche... ce qui n'est pas top pour l'utilisateur.

    Avez-vous une solution à me proposer ?
    Merci par avance,

  2. #2
    Rédacteur/Modérateur

    Avatar de Heureux-oli
    Homme Profil pro
    Contrôleur d'industrie
    Inscrit en
    Février 2006
    Messages
    21 087
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 59
    Localisation : Belgique

    Informations professionnelles :
    Activité : Contrôleur d'industrie
    Secteur : Aéronautique - Marine - Espace - Armement

    Informations forums :
    Inscription : Février 2006
    Messages : 21 087
    Points : 42 926
    Points
    42 926
    Par défaut
    Salut,

    Je pense que ce serait plus facile d'utiliser le LostFocus de ce contrôle au lieu du change.

  3. #3
    Membre régulier
    Profil pro
    Inscrit en
    Novembre 2007
    Messages
    426
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Novembre 2007
    Messages : 426
    Points : 111
    Points
    111
    Par défaut
    Bonjour,

    En effet cette solution fonctionne.
    Cependant, si la personne rentre le chiffre "30" alors la fenêtre d'erreur se déclenchera que lorsqu'il cliquera ailleurs dans le document Word.
    Si par exemple il descend l'ascenseur et clique seulement ensuite alors la fenêtre apparait, mais on ne sait plus où était la case.

    Peut-on mettre un code pour remonter automatiquement à la case à remplir ?
    J'ai essayé avec un :
    Mais cela ne marche pas.

    Merci par avance,

  4. #4
    Rédacteur/Modérateur

    Avatar de Heureux-oli
    Homme Profil pro
    Contrôleur d'industrie
    Inscrit en
    Février 2006
    Messages
    21 087
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 59
    Localisation : Belgique

    Informations professionnelles :
    Activité : Contrôleur d'industrie
    Secteur : Aéronautique - Marine - Espace - Armement

    Informations forums :
    Inscription : Février 2006
    Messages : 21 087
    Points : 42 926
    Points
    42 926
    Par défaut
    Salut,

    Il faut deux setfocus, l'un sur un contrôle quelconque et le second sur le bon contrôle.

Discussions similaires

  1. [ActiveX] Peut-on utiliser un Controle ActiveX avec Java
    Par waldo2188 dans le forum Multimédia
    Réponses: 2
    Dernier message: 22/02/2005, 11h39
  2. Réponses: 7
    Dernier message: 05/08/2004, 14h55
  3. Réponses: 3
    Dernier message: 08/07/2004, 11h06
  4. Réponses: 3
    Dernier message: 11/05/2004, 18h39
  5. Controle ActiveX MessageMap
    Par philippe V dans le forum MFC
    Réponses: 4
    Dernier message: 12/02/2004, 16h59

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