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

IHM Discussion :

[A-03] Passer d une table à son formulaire correspondant


Sujet :

IHM

  1. #1
    Membre à l'essai
    Inscrit en
    Septembre 2008
    Messages
    15
    Détails du profil
    Informations forums :
    Inscription : Septembre 2008
    Messages : 15
    Points : 13
    Points
    13
    Par défaut [A-03] Passer d une table à son formulaire correspondant
    Bonsoir à tous,

    je travaille sous access 2003,

    j ai une table et un formulaire batti à partir de cette table.

    J aimerais rouver un moyen ( macro par exemple) qui me permette de passer directement (par un raccourci clavier par exemple) de l'enregistrement que je suis en train de consulter à sa vue en formulaire.

    Je pense qu il y a moyen vu que l Id d un enregistrement dans la table est la meme que celle dans le formulaire.

    Simplement...je n ai aucune idée de comment faire...

    Merci beaucoup.

  2. #2
    Membre expert
    Avatar de mout1234
    Profil pro
    Inscrit en
    Novembre 2006
    Messages
    2 210
    Détails du profil
    Informations personnelles :
    Âge : 55
    Localisation : France, Paris (Île de France)

    Informations forums :
    Inscription : Novembre 2006
    Messages : 2 210
    Points : 3 228
    Points
    3 228
    Par défaut
    Bonjour,

    Les tables sont destinées principalement au stockage, même si, il est vrai, elles sont très faciles à utiliser et proposent de multiples outils pour une exploitation efficace...


    Il serait préférable de créer un formulaire, de type Feuille de Données pour avoir la même présentation qu'une table. Tu pourras alors associer une macro ou du code VBA, par exemple à l'évènement double-clic du formulaire et/ou des champs, qui ouvrira le formulaire (macro OuvrirFormulaire) détail en filtrant à l'ouverture (condition Where).

    Si ton nouveau formulaire s'appelle frmClient_Liste et ta clé un numérique appelé NumClient, la condition Where pourra être (non testé)
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
     
    "NumClient ='" & [Formulaires]![frmClient_Liste]!NumClient  & "'"

  3. #3
    Expert éminent
    Avatar de LedZeppII
    Homme Profil pro
    Maintenance données produits
    Inscrit en
    Décembre 2005
    Messages
    4 485
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Yvelines (Île de France)

    Informations professionnelles :
    Activité : Maintenance données produits
    Secteur : Distribution

    Informations forums :
    Inscription : Décembre 2005
    Messages : 4 485
    Points : 7 759
    Points
    7 759
    Par défaut
    Bonjour,

    J'aurai tendance à faire comme Mout1234.

    Sinon, ça peut se faire avec la macro Autokeys.
    On va dire, par exemple, qu'on va utiliser le raccourci Ctl+O (O comme Outlook)

    Dans mon exemple je vais affecter le raccourci au tables Clients et Commandes, dont les formulaires sont respectivement fmClients et fmCommandes
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    Table        Formulaire     Champ Clé
    -----------  -------------  ---------------------
    Clients      fmClients      Code client  (Texte)
    Commandes    fmCommandes    N° commande  (Nombre)
    Coller cette fonction dans un module de code
    Code vb : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    Public Function CtlPlusO()
    Dim strObjet As String, fm As Access.Form, strID As String
     
    On Error Resume Next
    strObjet = Screen.ActiveDatasheet.Name
    On Error GoTo 0
     
    Select Case strObjet
        Case "Clients"
            Set fm = Screen.ActiveDatasheet
            strID = fm.Controls("Code client").Value
            DoCmd.OpenForm "fmClients", , , "[Code client]='" & strID & "'"
        Case "Commandes"
            Set fm = Screen.ActiveDatasheet
            strID = fm.Controls("N° commande").Value
            DoCmd.OpenForm "fmCommandes", , , "[N° commande]=" & strID
    End Select
    End Function

    Créer un nouvelle Macro.
    Afficher la colonne "Nom de Macro"
    Sur la première ligne ...
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    Nom de macro : ^o
    Action       : ExécuterCode        Nomfonction : CtlPlusO ()
    Sauvegarder la macro sous le nom Autokeys

    Pour plus de détails, faire une recherche sur "autokeys" dans l'aide d'Acces.

    A+

Discussions similaires

  1. Passer tout une case de formulaire en majuscule.
    Par Lutine dans le forum VB.NET
    Réponses: 44
    Dernier message: 26/07/2007, 12h30
  2. Une table 2 formulaires
    Par domgrondin dans le forum IHM
    Réponses: 1
    Dernier message: 21/06/2007, 22h39
  3. passer d'une table paradox à une autre en cliquant sur un bouton
    Par lecongolais dans le forum Bases de données
    Réponses: 1
    Dernier message: 01/11/2006, 15h15
  4. Tri des lignes d'une Table via Formulaire
    Par kato dans le forum Access
    Réponses: 3
    Dernier message: 19/04/2006, 12h53
  5. Réponses: 14
    Dernier message: 22/09/2005, 16h49

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