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 :

Faire correspondre un Etat à un Formulaire ouvert


Sujet :

IHM

  1. #1
    Membre à l'essai
    Profil pro
    Inscrit en
    Décembre 2004
    Messages
    46
    Détails du profil
    Informations personnelles :
    Âge : 81
    Localisation : France, Maine et Loire (Pays de la Loire)

    Informations forums :
    Inscription : Décembre 2004
    Messages : 46
    Points : 17
    Points
    17
    Par défaut Faire correspondre un Etat à un Formulaire ouvert
    Bonjour,

    Dans une base de données, j'utilise deux formulaires le premier est un "Formulaire de consultation" (non modifiable) le deuxième est un Formulaire d'entrée et de modification des données. Ces 2 formulaires sont liés à une même table avec un champ "Code" unique.

    Pour chacun de ces Formulaires, j'ai mis en place un bouton d'impression d'un Etat lié au champ "Code". L'Etat est donc établi à partir d'une requête liée au Formulaire tel que :

    [Formulaires]![Form Membres]![Code]

    Cela m'oblige en fait de faire 2 requêtes et 2 Etats identiques un par Formulaires, de consultation et de modification.

    Ce n'est pas très grave, mais n'y aurait-il pas moyen de traiter cela plus facilement à partir du formulaire ouvert ???

    Merci de votre aide

  2. #2
    Membre éprouvé
    Avatar de keita
    Homme Profil pro
    Inscrit en
    Novembre 2002
    Messages
    881
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Côte d'Ivoire

    Informations forums :
    Inscription : Novembre 2002
    Messages : 881
    Points : 1 121
    Points
    1 121
    Par défaut
    salut et bonne fete à toi
    Regarde dans l'aide d'access ce que la propriété CodeContextobject peut faire pour toi.
    @+

  3. #3
    Membre à l'essai
    Profil pro
    Inscrit en
    Décembre 2004
    Messages
    46
    Détails du profil
    Informations personnelles :
    Âge : 81
    Localisation : France, Maine et Loire (Pays de la Loire)

    Informations forums :
    Inscription : Décembre 2004
    Messages : 46
    Points : 17
    Points
    17
    Par défaut
    Merci Keita,

    J'ai cherché à la fois sur le forum et dans l'aide d'Access mais je n'ai rien trouvé sur l'information sur CodeContextObject.

    Peux-tu m'en dire un peu plus.

    Merci et Bonnes fête à à toi et à vous tous

  4. #4
    Membre éprouvé
    Avatar de keita
    Homme Profil pro
    Inscrit en
    Novembre 2002
    Messages
    881
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Côte d'Ivoire

    Informations forums :
    Inscription : Novembre 2002
    Messages : 881
    Points : 1 121
    Points
    1 121
    Par défaut
    Autre solution:
    1/tu crées une variable publique varTemp dans un module standard
    2/un click sur le bouton du form initialise varTemp avec la valeur du code
    3/ton etat, en s'ouvrant (donc evenement sur ouverture) recupere le code dans vartemp.
    j'espere avoir été clair.
    merci et bonne fete à toi Phyl.

  5. #5
    Membre à l'essai
    Profil pro
    Inscrit en
    Décembre 2004
    Messages
    46
    Détails du profil
    Informations personnelles :
    Âge : 81
    Localisation : France, Maine et Loire (Pays de la Loire)

    Informations forums :
    Inscription : Décembre 2004
    Messages : 46
    Points : 17
    Points
    17
    Par défaut
    Oui c'est clair, et je comprend le fonctionnement qui me parait très simple. Seulement je ne pense pas être assez calé pour faire le module avec la variable. Si tu peux m'aider ???

  6. #6
    Rédacteur/Modérateur
    Avatar de argyronet
    Homme Profil pro
    Panseur de bobos en solutions ETL
    Inscrit en
    Mai 2004
    Messages
    5 123
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Panseur de bobos en solutions ETL
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Mai 2004
    Messages : 5 123
    Points : 12 169
    Points
    12 169
    Billets dans le blog
    5
    Par défaut
    Bonjour

    Pas besoin de variable publique pour ça...

    Le principe d'ouverture d'un formulaire ou d'un état reste le même en ce qui concerne la clause WHERE.
    Tu peux donc ouvrir l'un ou l'autre en renseignant correctement cette condition en se basant sur la syntaxe suivante:

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
     
    Private Sub cmdVoirEtat_Click()
    Dim strMyCondition As String
     
      strMyCondition = "[Code]=" & Me![Code]
      DoCmd.OpenReport "Mon état à ouvrir", acViewPreview, , strMyCondition
    End Sub
    Argy
    Ce qui donne son sens à la communication, c´est la réponse que l´on obtient. Si vous n´obtenez pas la réponse voulue, communiquez différemment.

    Ils comptent sur vous...
    Web Site@Mail
    Tutoriels : Déployez vos applications Access 2010 à 2019 */* Réalisez un Assistant de présaisie...
    MDB Viewer : Visionneuse Access v4.0
    *** Je recherche des profils (2 ans min.) Java EE, Fullstack, Front, .Net, Mobile... pour CDI ***

  7. #7
    Membre confirmé
    Inscrit en
    Janvier 2005
    Messages
    529
    Détails du profil
    Informations forums :
    Inscription : Janvier 2005
    Messages : 529
    Points : 464
    Points
    464
    Par défaut
    Salut,
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
     
    docmd.openreport "nometat", acpreview, [champdevotreetat]=[forms]![votreformulaire]![champs correspondant]
    Bonne chance.
    Bonne fête à TOUS.
    Merci
    Deux, n'apprendront pas; le timide et l'arrogant

  8. #8
    Membre à l'essai
    Profil pro
    Inscrit en
    Décembre 2004
    Messages
    46
    Détails du profil
    Informations personnelles :
    Âge : 81
    Localisation : France, Maine et Loire (Pays de la Loire)

    Informations forums :
    Inscription : Décembre 2004
    Messages : 46
    Points : 17
    Points
    17
    Par défaut
    Merci beaucoup à vous 3.

    Dès demain matin j'essaye les codes evennements donnés et je vous tiens au courant

  9. #9
    Rédacteur/Modérateur
    Avatar de argyronet
    Homme Profil pro
    Panseur de bobos en solutions ETL
    Inscrit en
    Mai 2004
    Messages
    5 123
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Panseur de bobos en solutions ETL
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Mai 2004
    Messages : 5 123
    Points : 12 169
    Points
    12 169
    Billets dans le blog
    5
    Par défaut
    Citation Envoyé par hocine
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
     
    docmd.openreport "nometat", acpreview, [champdevotreetat]=[forms]![votreformulaire]![champs correspondant]
    Hocine...
    Tu as oublié les guillemets...
    Ils sont restés dans la hôte ?

    Argy
    Ce qui donne son sens à la communication, c´est la réponse que l´on obtient. Si vous n´obtenez pas la réponse voulue, communiquez différemment.

    Ils comptent sur vous...
    Web Site@Mail
    Tutoriels : Déployez vos applications Access 2010 à 2019 */* Réalisez un Assistant de présaisie...
    MDB Viewer : Visionneuse Access v4.0
    *** Je recherche des profils (2 ans min.) Java EE, Fullstack, Front, .Net, Mobile... pour CDI ***

  10. #10
    Membre à l'essai
    Profil pro
    Inscrit en
    Décembre 2004
    Messages
    46
    Détails du profil
    Informations personnelles :
    Âge : 81
    Localisation : France, Maine et Loire (Pays de la Loire)

    Informations forums :
    Inscription : Décembre 2004
    Messages : 46
    Points : 17
    Points
    17
    Par défaut
    Citation Envoyé par argyronet

    strMyCondition = "[Code]=" & Me![code]

    Argy
    Cela fonctionne parfaitement, merci beaucoup.

    Cependant j'aimerais comprendre pourquoi il m'a fallu mettre cette condition "[code]=" ? N'aurais-je pu mettre seulement "[code]"

    C'est juste pour pouvoir le refaire plus tard en comprenant.

    Merci

  11. #11
    Rédacteur/Modérateur
    Avatar de argyronet
    Homme Profil pro
    Panseur de bobos en solutions ETL
    Inscrit en
    Mai 2004
    Messages
    5 123
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Panseur de bobos en solutions ETL
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Mai 2004
    Messages : 5 123
    Points : 12 169
    Points
    12 169
    Billets dans le blog
    5
    Par défaut
    Bonjour,

    Citation Envoyé par Phyl
    Cependant j'aimerais comprendre pourquoi il m'a fallu mettre cette condition "[code]=" ? N'aurais-je pu mettre seulement "[code]"
    C'est juste pour pouvoir le refaire plus tard en comprenant.
    Eh bien une condition s'écrit comme lorsque tu écris une requête SQL.
    Pour mieux comprendre, créé une requête "bidon" dans l'éditeur de requêtes où tu émets une condition quelconque.
    Passe en mode Feuille de données pour voir le résultat puis bascule en mode SQL pour regarder la syntaxe:
    Tu le vois, elle est la suivante:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    Crochet; Nom du Champ; Crochet; Signe égal; "Valeur cherchée"
    Ce qui se traduit par:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    [Nom du champ]="Une valeur"
    Mais comme la clause WHERE dans une méthode OpenForm ou OpenReport est une chaine de caractères, elle doit être établie en String donc, cela t'impose de poser des guillemets en plus.

    Note importante et complémentaire:
    Si la valeur cherchée est elle-même une chaine de caractères, tu dois forcer les guillemets
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
     
    strMaValeur="Une valeur quelconque"
    "[Nom du champ]=" & Chr(34) & strMaValeur & Chr(34)
    Sinon tu n'en mets pas:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
     
    intMaValeur=1234
    "[Nom du champ]=" & intMyValue
    Argy
    Ce qui donne son sens à la communication, c´est la réponse que l´on obtient. Si vous n´obtenez pas la réponse voulue, communiquez différemment.

    Ils comptent sur vous...
    Web Site@Mail
    Tutoriels : Déployez vos applications Access 2010 à 2019 */* Réalisez un Assistant de présaisie...
    MDB Viewer : Visionneuse Access v4.0
    *** Je recherche des profils (2 ans min.) Java EE, Fullstack, Front, .Net, Mobile... pour CDI ***

  12. #12
    Membre à l'essai
    Profil pro
    Inscrit en
    Décembre 2004
    Messages
    46
    Détails du profil
    Informations personnelles :
    Âge : 81
    Localisation : France, Maine et Loire (Pays de la Loire)

    Informations forums :
    Inscription : Décembre 2004
    Messages : 46
    Points : 17
    Points
    17
    Par défaut
    Merci beaucoup "argy", je n'ai pas tout compris à la première lecture, mais je vais le travailler un peu et il n'y a pas de raison que je n'y arrive pas.

    Bien évidemment je connais la fonction mode Sql que je n'utilise peut-être pas assez souvent

    En tout cas Merci encore

    Bonne Année 2006 à vous tous

  13. #13
    Rédacteur/Modérateur
    Avatar de argyronet
    Homme Profil pro
    Panseur de bobos en solutions ETL
    Inscrit en
    Mai 2004
    Messages
    5 123
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Panseur de bobos en solutions ETL
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Mai 2004
    Messages : 5 123
    Points : 12 169
    Points
    12 169
    Billets dans le blog
    5
    Par défaut
    Merci de cliquer sur

    Argy
    Ce qui donne son sens à la communication, c´est la réponse que l´on obtient. Si vous n´obtenez pas la réponse voulue, communiquez différemment.

    Ils comptent sur vous...
    Web Site@Mail
    Tutoriels : Déployez vos applications Access 2010 à 2019 */* Réalisez un Assistant de présaisie...
    MDB Viewer : Visionneuse Access v4.0
    *** Je recherche des profils (2 ans min.) Java EE, Fullstack, Front, .Net, Mobile... pour CDI ***

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

Discussions similaires

  1. pb pour faire correspondre 2 listes de choix
    Par david714 dans le forum Access
    Réponses: 5
    Dernier message: 27/02/2006, 11h12
  2. faire une boucle ds un formulaire
    Par gohu13 dans le forum Access
    Réponses: 1
    Dernier message: 21/09/2005, 12h54
  3. Formulaire ouvert ?!
    Par neuro dans le forum Access
    Réponses: 26
    Dernier message: 07/09/2005, 13h17
  4. Réponses: 4
    Dernier message: 03/04/2005, 14h26
  5. Faire pointer sur un objet formulaire
    Par bigsister dans le forum Général JavaScript
    Réponses: 4
    Dernier message: 26/11/2004, 16h25

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