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 :

ouvrir un formulaire sur reception du focus sur un champs texte [AC-2010]


Sujet :

VBA Access

  1. #1
    Membre à l'essai
    Inscrit en
    Janvier 2009
    Messages
    26
    Détails du profil
    Informations forums :
    Inscription : Janvier 2009
    Messages : 26
    Points : 17
    Points
    17
    Par défaut ouvrir un formulaire sur reception du focus sur un champs texte
    Bonjour,

    Je suis en train de créer une base de données access. Je connais assez bien access mais suis débutant en VBA

    J'ai deux tables : client et contrat

    Champs de la table contrat :
    ID_contrat (clé primaire)
    libellé_contrat
    ...
    nom_contrat

    Champs de la table client:
    Nom_client(clé primaire)
    adress
    tel
    ...

    Les 2tables sont reliées par le champs nom_client

    J'ai un formulaire "fiche client" basique qui me donne toutes les infos contenues ds la table client

    J'ai un 2eme formulaire tabulaire "liste contrat client"qui indique la liste des contrats par client.
    La premiere zone de texte de cette liste (dans la section détails) est le nom_client de la table contrat

    lorsque je suis en mode affichage sur le formulaire "liste contrat client" je voudrais pouvoir, en cliquant sur la zone de texte nom_client, ouvrir le formulaire "fiche client" qui est associé à ce client !!

    Si quelqu'un peux m'aider je le remercie par avance

  2. #2
    Membre expérimenté Avatar de RobiPMS
    Homme Profil pro
    Conseiller psycho-pédagogique
    Inscrit en
    Octobre 2007
    Messages
    827
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Belgique

    Informations professionnelles :
    Activité : Conseiller psycho-pédagogique
    Secteur : Enseignement

    Informations forums :
    Inscription : Octobre 2007
    Messages : 827
    Points : 1 506
    Points
    1 506
    Par défaut
    Bonjour.
    Tu dois simplement créer une procédure événementielle sur l'événement Click de ce champ, avec un code comme ceci :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    Private Sub nom_client_Click()
    DoCmd.OpenForm "fiche client", , , "[Nom_source]![nom_client]=[Forms]![liste contrat client]![nom_client]"
    End Sub
    Dans ce code, tu dois remplacer Nom_source par le nom de la table ou de la requête source (client?) du formulaire que tu veux ouvrir.
    [nom_client] qui suit le ! est le nom du champ commun dans la source. J'ai utilisé les noms que tu as donnés, mais vérifie et remplace si nécessaire par les noms exacts de tes champs.
    Cordialement.
    N'oubliez pas de tagguer la discussion comme résolue si vous avez été aidé!
    Plus haut monte le singe, plus il montre son cul (Montaigne)
    Je ne réponds pas aux messages personnels concernant des questions discutées dans le forum.

  3. #3
    Membre expérimenté Avatar de RobiPMS
    Homme Profil pro
    Conseiller psycho-pédagogique
    Inscrit en
    Octobre 2007
    Messages
    827
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Belgique

    Informations professionnelles :
    Activité : Conseiller psycho-pédagogique
    Secteur : Enseignement

    Informations forums :
    Inscription : Octobre 2007
    Messages : 827
    Points : 1 506
    Points
    1 506
    Par défaut
    Petite précision.

    Dans l'intitulé de ton post, tu parles de réception du focus. Si tu veux ouvrir le formulaire quand le focus est sur le champ, c'est bien sûr le code suivant qu'il faut utiliser :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    Private Sub nom_client_GotFocus()
    Mais
    en cliquant sur la zone de texte nom_client
    tu parlais aussi de clic, donc ... et je crois que c'est une meilleure idée!

    Bonne soirée!
    N'oubliez pas de tagguer la discussion comme résolue si vous avez été aidé!
    Plus haut monte le singe, plus il montre son cul (Montaigne)
    Je ne réponds pas aux messages personnels concernant des questions discutées dans le forum.

  4. #4
    Membre à l'essai
    Inscrit en
    Janvier 2009
    Messages
    26
    Détails du profil
    Informations forums :
    Inscription : Janvier 2009
    Messages : 26
    Points : 17
    Points
    17
    Par défaut MERCI
    oui il s'agit bien de la réception du focus sur mon champs texte.

    Merci pour ton aide je vais regarder tout ça !!

  5. #5
    Membre à l'essai
    Inscrit en
    Janvier 2009
    Messages
    26
    Détails du profil
    Informations forums :
    Inscription : Janvier 2009
    Messages : 26
    Points : 17
    Points
    17
    Par défaut merci
    C'est bon ça fonctionne et tu avais raison il avait mieux créé l'évenement sur le click et non la réception focus !!

    Merci bien!

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

Discussions similaires

  1. [AC-2010] Formulaire - Comment récupérer une partie d'un champ texte
    Par Invité dans le forum IHM
    Réponses: 3
    Dernier message: 10/06/2011, 16h22
  2. Empecher la validation d'un formulaire via la méthode focus() d'un champs
    Par Mouns007 dans le forum Général JavaScript
    Réponses: 4
    Dernier message: 12/10/2010, 13h54
  3. Set focus sur formulaire à ouvrir.
    Par Salsaboy60 dans le forum IHM
    Réponses: 5
    Dernier message: 28/02/2009, 13h33
  4. Réponses: 1
    Dernier message: 28/03/2007, 19h20
  5. Focus sur les boutons avec plusieurs formulaire
    Par davids21 dans le forum Général JavaScript
    Réponses: 3
    Dernier message: 19/04/2005, 15h48

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