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 Access Discussion :

Evènement commun à plusieurs contrôles


Sujet :

VBA Access

  1. #1
    Nouveau Candidat au Club
    Profil pro
    Inscrit en
    Janvier 2010
    Messages
    3
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Janvier 2010
    Messages : 3
    Points : 1
    Points
    1
    Par défaut Evènement commun à plusieurs contrôles
    Bonjour,

    J'ai dans un formulaire tout un tas de contrôles, répartit en plusieurs onglets.
    Au total, le formulaire possède une centaine de champs texte.

    Mon objectif : je veux lancer l'évènement lostfocus() lorsqu'on quitte un champs texte, ce code étant le même quelque soit le champs texte.

    Mon problème : il est long et fastidieux de prévoir un évènement lostfocus() pour chaque contrôle texte en recopiant le même code a chaque fois.

    Ma question :
    existe-t-il un code en VBA qui me permette de déclencher l'évènement lostfucus() quelque soit le champ texte de mon formulaire ?
    (si il existe une autre méthode que le VBA, je suis ouvert à toute réflexion).

    Merci d'avoir pris du temps pour lire mon message.

  2. #2
    Expert éminent sénior
    Avatar de Domi2
    Homme Profil pro
    Gestionnaire
    Inscrit en
    Juin 2006
    Messages
    7 194
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 64
    Localisation : Suisse

    Informations professionnelles :
    Activité : Gestionnaire
    Secteur : Administration - Collectivité locale

    Informations forums :
    Inscription : Juin 2006
    Messages : 7 194
    Points : 16 044
    Points
    16 044
    Par défaut
    Bonsoir,

    existe-t-il un code en VBA qui me permette de déclencher l'évènement lostfucus() quelque soit le champ texte de mon formulaire ?
    Malheureusement non. Tu dois de toute façon mettre un peu de code dans l'événement (c'est également possible dans la propriété du contrôle) pour appeler une fonction/procédure "générique".

    Que fait exactement la fonction/procédure que tu souhaites exécuter ?

    Domi2

  3. #3
    Nouveau Candidat au Club
    Profil pro
    Inscrit en
    Janvier 2010
    Messages
    3
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Janvier 2010
    Messages : 3
    Points : 1
    Points
    1
    Par défaut
    Merci pour ta réponse.

    Voila ce qui se passe : Chaqu'un de mes champs contient un nombre. Lorsque je change un de ces champs, la somme de ces nombres est calculée et enregistrée dans un autre champ (appellons le B). La valeur de ce champ est à son tour copié dans un autre champ (appelons le C).

    Dans la propriété "source de controle" du controle B, la somme de tous les champs est calculée automatiquement.

    Cependant je ne peux pas faire ainsi pour le champ C. Ma solution est donc d'appeler l'évènement lostfocus() lorsque je valide le changement dans un champs.

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    Private Sub txt_Un_Champ_LostFocus()
    Me.txt_Champs_C = Me.txt_Champs_B
    End Sub
    Le code est simple, mais le copier 100 fois est un peu long.

  4. #4
    Expert éminent sénior
    Avatar de Domi2
    Homme Profil pro
    Gestionnaire
    Inscrit en
    Juin 2006
    Messages
    7 194
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 64
    Localisation : Suisse

    Informations professionnelles :
    Activité : Gestionnaire
    Secteur : Administration - Collectivité locale

    Informations forums :
    Inscription : Juin 2006
    Messages : 7 194
    Points : 16 044
    Points
    16 044
    Par défaut
    Bonjour,

    je valide le changement dans un champs.
    Tu parles de validation. Tu utilises un bouton pour ça ?

    Domi2

  5. #5
    Nouveau Candidat au Club
    Profil pro
    Inscrit en
    Janvier 2010
    Messages
    3
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Janvier 2010
    Messages : 3
    Points : 1
    Points
    1
    Par défaut
    Non, lorsque je dis "valider" j'entends appuyer sur la touche "Entrer" du clavier, il n'y a aucun bouton.

    Ta réponse ma été utile, même si ca ne m'arrange pas au moins je sais qu'il n'existe pas de méthode pour automatiser un évènement sur plusieurs contrôles.

    Merci pour ton aide.

    Quand à moi, je m'en vais me palucher 102 évènements identiques...

Discussions similaires

  1. [AC-2010] Evènement sur plusieurs contrôles en même temps
    Par illight dans le forum IHM
    Réponses: 4
    Dernier message: 25/09/2014, 12h13
  2. [Toutes versions] Evènement sur plusieurs contrôles
    Par Fabious dans le forum IHM
    Réponses: 5
    Dernier message: 06/10/2011, 15h41
  3. Gestionnaire d'évènement commun à plusieurs contrôles
    Par jacquesprogram dans le forum Windows Presentation Foundation
    Réponses: 4
    Dernier message: 07/08/2011, 20h00
  4. Réponses: 8
    Dernier message: 08/03/2006, 16h12
  5. Réponses: 5
    Dernier message: 20/09/2005, 22h48

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