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 :

utilisation du selecteur [AC-2003]


Sujet :

IHM

  1. #1
    Nouveau membre du Club
    Profil pro
    Inscrit en
    Avril 2009
    Messages
    34
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Avril 2009
    Messages : 34
    Points : 25
    Points
    25
    Par défaut utilisation du selecteur
    Bonjour,

    Merci d'avance à tous ceux qui m'aiderons,

    Je developpe une application sous access, j'ai un formulaire: frmMenuGestionHierarchie qui affiche via un sous formulaire en mode feuille de données les métiers existants en lecture seule.
    Sur ce même formaulaire j'ai plusieurs boutons, hors l'un d'eux: btnPropriétés nous emméne sur un formulaire : frmPropriétés qui doit permettre de visualiser toutes les propriétés du métier selectionné via le selecteur dans le formulaire frmMenuGestionHierarchie, je ne sais pas du tout comment utiliser le sélecteur, je ne sais pas comment récupérer les valeurs du métier séléctionné par celui-ci.

    En attente de vos réponses...

    je vous joins un schéma pour que vous puissiez visualiser mon problème..
    Images attachées Images attachées  

  2. #2
    Membre expérimenté
    Homme Profil pro
    Développeur VBA Access
    Inscrit en
    Avril 2006
    Messages
    1 109
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Développeur VBA Access

    Informations forums :
    Inscription : Avril 2006
    Messages : 1 109
    Points : 1 535
    Points
    1 535
    Par défaut
    bonjour,

    le sélecteur indique quel est l'enregistrement courant. A chaque changement d'enregistrement, l'événement Sur Activation du formulaire est provoqué.
    On peut manipuler les champs de la source de données d'un formulaire en encadrant leur nom par des [.

    Exemple: L'exemple ici affiche simplement l'identifiant du métier choisi, lors du click sur le bouton btnpropriete.
    Pour l'exemple, j'appelle IdMetier le champ identifiant de la table des métiers, et le contrôle sous-formulaire SsFrmMetiers.
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    Private Sub btnPropriete_Click()
     msgbox "Vous désirez consulter les propriétés du métier : " & SsFrmMetiers.Form![IdMetier]
    End sub

  3. #3
    Nouveau membre du Club
    Profil pro
    Inscrit en
    Avril 2009
    Messages
    34
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Avril 2009
    Messages : 34
    Points : 25
    Points
    25
    Par défaut
    mon champ identifiant métier s'appelle IdMetier, cependant la msgBox ne fonctionne pas, une erreur s'affiche : " 2465 impossible de trouver le champ 'I' auquel il est fait réfèrence dans votre expression"

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    Private Sub btnProprieteHierarchie_Click()
    MsgBox ("Vous désirez consulter les propriétés du métier : " & [IdMetier])
    DoCmd.OpenForm "frmproprietesHierarchie"
    End Sub

  4. #4
    Membre expérimenté
    Homme Profil pro
    Développeur VBA Access
    Inscrit en
    Avril 2006
    Messages
    1 109
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Développeur VBA Access

    Informations forums :
    Inscription : Avril 2006
    Messages : 1 109
    Points : 1 535
    Points
    1 535
    Par défaut
    Oui,
    mais ton champ idMetier est localisé dans le sous-formulaire alors que le bouton btnpropriete dans le formulaire principal. Il te faut préciser le chemin d'accès au champ [IdMetier] comme je l'ai indiqué dans l'exemple.
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    NomduControleSousFormulaire.Form![IdMetier]
    Tu auras compris qu'il te faut remplacer NomduControlSousFormulaire par le nom du contrôle sous-formulaire.

  5. #5
    Nouveau membre du Club
    Profil pro
    Inscrit en
    Avril 2009
    Messages
    34
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Avril 2009
    Messages : 34
    Points : 25
    Points
    25
    Par défaut
    ok, merci pour votre réponse, qu'entendez vous par nom du contrôle sous formulaire? car si c'est l'appelation du selecteur je ne sais justement pas comment l'appeler, ou est-ce juste le nom de mon sous formulaire?

  6. #6
    Membre expérimenté
    Homme Profil pro
    Développeur VBA Access
    Inscrit en
    Avril 2006
    Messages
    1 109
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Développeur VBA Access

    Informations forums :
    Inscription : Avril 2006
    Messages : 1 109
    Points : 1 535
    Points
    1 535
    Par défaut
    Non, ce n'est pas le sélecteur mais tu as dit avoir un sous-formulaire en mode feuille de données; ce sous-formulaire est contenu dans un contrôle du formulaire principal frmMenuGestionHierarchie. C'est le nom du contrôle qu'il faut utiliser.

  7. #7
    Nouveau membre du Club
    Profil pro
    Inscrit en
    Avril 2009
    Messages
    34
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Avril 2009
    Messages : 34
    Points : 25
    Points
    25
    Par défaut
    oui c'est exact, j'ai mon sous formulaire : frm-scd-GestionHierarchie qui est dans mon formulaire frmMenuGestionHierarchie , mais je ne comprends pas ce que tu appelle controle? car j'ai juste ajouté un sous formulaire dans mon formulaire, je ne sais pas ce quel est son controle dans mon cas?..
    merci beaucoup pour ton aide

  8. #8
    Membre expérimenté
    Homme Profil pro
    Développeur VBA Access
    Inscrit en
    Avril 2006
    Messages
    1 109
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Développeur VBA Access

    Informations forums :
    Inscription : Avril 2006
    Messages : 1 109
    Points : 1 535
    Points
    1 535
    Par défaut
    Ok, c'est comme les poupées russes, une poupée dans laquelle tu as une poupée dans laquelle .....
    Un formulaire ne contient que des contrôles (une zone de texte, une liste modifiable... sont des contrôles), un contrôle sous-formulaire est un contrôle dans lequel il y a un formulaire. Le nom du contrôle sous-formulaire peut être différent du nom du formulaire qu'il contient; c'est pourquoi il faut utiliser le nom du contrôle sous-formulaire.

    Essaie ceci :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    Private Sub btnProprieteHierarchie_Click()
     DoCmd.OpenForm "frmproprietesHierarchie",,,"idmetier=" & frm-scd-GestionHierarchie.Form![idmetier] 
    End Sub

  9. #9
    Nouveau membre du Club
    Profil pro
    Inscrit en
    Avril 2009
    Messages
    34
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Avril 2009
    Messages : 34
    Points : 25
    Points
    25
    Par défaut
    j'ai tapé ce code, mais sa ne marche pas, en disant que mon formulaire frm-scd-gestionHierarchie n'existe pas, ce en doit donc pas etre le nom du controle, j'ai essayé en el mettant entre crochet mais sa ne fonctionne pas non plus.
    J'ai essayé avec cette syntaxe :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    Private Sub btnProprieteHierarchie_Click()
    DoCmd.OpenForm "frmproprietesHierarchie", , , "idmetier=" & Forms![frmscdGestionHierarchie]![IdMetier]
    End Sub
    encore sans résultats...
    Comment puis-je connaitre le nom du controle, dans les propriétés peut etre?
    de plus je ne comprends pas a quoi servent les ",,," dans votre code

    Merci encore

  10. #10
    Nouveau membre du Club
    Profil pro
    Inscrit en
    Avril 2009
    Messages
    34
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Avril 2009
    Messages : 34
    Points : 25
    Points
    25
    Par défaut
    j'ai changé le nom de mon sous formulaire en enlevant les tirets, en mettant la ligne de code que vous m'avez donné precedemmant j'ai maintenant cette erreur en cliquant sur le bouton btnProprieteHierarchie:

    (voir image jointe svp )
    Images attachées Images attachées  

  11. #11
    Membre expérimenté
    Homme Profil pro
    Développeur VBA Access
    Inscrit en
    Avril 2006
    Messages
    1 109
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Développeur VBA Access

    Informations forums :
    Inscription : Avril 2006
    Messages : 1 109
    Points : 1 535
    Points
    1 535
    Par défaut
    Bonjour,
    je comprends mal, le problème avec le nom du contrôle. Tous les objets placé sur un formulaire sont des contrôles. Lorsqu'on place un formulaire dans un autre formulaire, on crée donc un contrôle sous-formulaire, ce contrôle a un nom. Il faut utiliser ce nom. Maintenant, le nom de tous les contrôles du formulaires sont accessibles dans la fenêtre de code dans le liste déroulante au-dessus du code, et ou on peut les lister pendant l'écriture du code en tapant tu obtiendras la liste des propriétés et objets du formulaire permettant de compléter la ligne.

    J'ai donné un code, qui suppose que le frmProprietesHierarchie a une soure de donnée et que cette source a un champ idmetier. Je suis allé visiblement trop vite.
    Commence par faire ceci :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    Private Sub btnProprieteHierarchie()
     Msgbox "Vous désirez consulter les propriétés du métier : " & Me.frmscdGestionHierarchie![idemetier]
     docmdOpenform "frmProprietesHierarchie"
    End sub

  12. #12
    Nouveau membre du Club
    Profil pro
    Inscrit en
    Avril 2009
    Messages
    34
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Avril 2009
    Messages : 34
    Points : 25
    Points
    25
    Par défaut
    Merci beaucoup pour votre aide, elle à été precieuse et m'as permis de m'orienter sur la facon de proceder, j'ai juste changé la syntaxe par rapport a un site que j'avais trouvé, l'erreur que j'avais apparaissait en cliquant sur n'importe quel bouton, je ne sais pas pourquoi. J'ai ouvert une version antérieure et y ai ajouté votre code en le modifiant, et ca a marché! merci pour l'idée de la mqgBox car j'ai procédé de cette facon, des que ca as marché avec la msgBox j'ai compris le système.

    Voici mon code:


    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    Private Sub btnProprieteHierarchie_Click()
    MsgBox ("Vous désirez consulter les propriétés du métier : " & Forms![frmMenuGestionHierarchie]![frm-scd-GestionHierarchie].Form![NomMetier])
    DoCmd.OpenForm "frmproprietesHierarchie"
    End Sub

    Merci mille fois encore pour ton aide!!!!

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

Discussions similaires

  1. utiliser les tag [MFC] [Win32] [.NET] [C++/CLI]
    Par hiko-seijuro dans le forum Visual C++
    Réponses: 8
    Dernier message: 08/06/2005, 15h57
  2. Réponses: 4
    Dernier message: 05/06/2002, 14h35
  3. utilisation du meta type ANY
    Par Anonymous dans le forum CORBA
    Réponses: 1
    Dernier message: 15/04/2002, 12h36
  4. [BCB5] Utilisation des Ressources (.res)
    Par Vince78 dans le forum C++Builder
    Réponses: 2
    Dernier message: 04/04/2002, 16h01
  5. Réponses: 2
    Dernier message: 20/03/2002, 23h01

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