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 :

Ouvrir état sur choix liste déroulante?


Sujet :

IHM

  1. #1
    Candidat au Club
    Homme Profil pro
    Technicien maintenance
    Inscrit en
    Décembre 2014
    Messages
    8
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 49
    Localisation : France, Loire (Rhône Alpes)

    Informations professionnelles :
    Activité : Technicien maintenance

    Informations forums :
    Inscription : Décembre 2014
    Messages : 8
    Points : 4
    Points
    4
    Par défaut Ouvrir état sur choix liste déroulante?
    Bonjour à tous,

    Je débute sur Access et patauge déjà!

    Je dois créer une base de gestion des licenciés et autres personnes pour un club sportif. je voudrais pour le moment arrivé à imprimer un listing de joueurs en fonction d'une catégorie. A l'heure actuelle, j'ai:

    - tables : licencies avec un champ categorie dont la source est une table categorie (qui comprend 4 champs dont un index).
    - un formulaire choix categorie qui affiche une liste déroulante (dont le nom est selectcat) dont le contenu est une requete sur la table categorie pour afficher toutes les catégories avec un évènement après MAJ qui lance la commande DoCmd.OpenReport "Licencies par categorie", acViewPreview
    - Une requete crée en cherchant dans le forum Rlicencies par categorie qui sélectionne les données dans ma table licencies avec une formule [Formulaires]![Choix catégorie]![Selectcat]
    - un état licencies par categorie dont la source de données est la requête au dessus.

    j'ouvre le formulaire choix categorie, la liste déroulante s'affiche bien avec les choix. Au clic sur le choix, j'ai bien mon état qui s'affiche mais vide.

    Je rate donc sans doute une étape dans tout ça, mais quand on découvre sur le tas et le tard, pas facile!

    Si une bonne âme pouvait m'aiguiller?

    Merci

  2. #2
    Membre expérimenté Avatar de bernardmichel
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Janvier 2004
    Messages
    1 181
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Vaucluse (Provence Alpes Côte d'Azur)

    Informations professionnelles :
    Activité : Développeur informatique

    Informations forums :
    Inscription : Janvier 2004
    Messages : 1 181
    Points : 1 591
    Points
    1 591
    Par défaut
    Bonsoir !

    A priori, je pense que le problème est le contenu de la liste déroulante.
    En effet, bien souvent la liste déroulante est composée de plusieurs colonnes dont la première (cachée) est l'identifiant.
    Il faut regarder dans la table alimentant le formulaire si le champ "catégorie" contient des chiffres (identifiant) ou le nom de la catégorie.
    S'il contient la catégorie (en toutes lettres), il faut faire appel à la référence "Column"

    Actuellement, le code de votre requête fait appel à la première colonne de la liste déroulante soit l'identifiant (je pense)
    Pour "atteindre" une autre colonne, il faut simplement changer la condition de la requête, de la façon suivante:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    [Formulaires]![Choix catégorie]![Selectcat].Column(x) 
    Souhaitant vous avoir donné une piste...
    Nous n'héritons pas la Terre de nos ancêtres, nous l'empruntons à nos enfants, prenons-en soin !
    (proverbe amérindien)

  3. #3
    Candidat au Club
    Homme Profil pro
    Technicien maintenance
    Inscrit en
    Décembre 2014
    Messages
    8
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 49
    Localisation : France, Loire (Rhône Alpes)

    Informations professionnelles :
    Activité : Technicien maintenance

    Informations forums :
    Inscription : Décembre 2014
    Messages : 8
    Points : 4
    Points
    4
    Par défaut
    Merci pour la réponse.

    Malheureusement, l'ajout de cet argument me retourne l'erreur suivante:

    Nom : vyogrd0.png
Affichages : 1501
Taille : 9,3 Ko

    SI je fais débogage, il point sur :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    Private Sub Selectcat_AfterUpdate()
    DoCmd.OpenReport "eLicencies par categorie", acViewPreview
    End Sub
    Je suppose que c'est l'argument column qui ne lui va pas?

    EDIT: pour info, voici la requête utilisée pour ouvrir l'état:

    Code SQL : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    SELECT tLicencies.CATEGORIE, tLicencies.NOM_PERS, tLicencies.PRENOM_PERS, tLicencies.LICENCE
    FROM tLicencies
    WHERE (((tLicencies.CATEGORIE)=[Formulaires]![fChoix catégorie]![Selectcat]));

    Encore une chose, est ce que je peux sur le formulaire afficher la valeur sélectionnée dans ma liste déroulante sur une zone texte?

  4. #4
    Membre expérimenté Avatar de bernardmichel
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Janvier 2004
    Messages
    1 181
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Vaucluse (Provence Alpes Côte d'Azur)

    Informations professionnelles :
    Activité : Développeur informatique

    Informations forums :
    Inscription : Janvier 2004
    Messages : 1 181
    Points : 1 591
    Points
    1 591
    Par défaut
    Bonsoir !

    Le message d'erreur indique que vous n'avez pas attribué un N° à Column. Dans mon premier message, je l'avais remplacé par un "x"

    Ouvrez les propriétés de votre liste déroulante et regardez combien vous avez de colonnes dans votre liste (cf. image jointe, point 1)
    puis regardez quels sont les données affichées dans chacune des colonnes (Même image, point 2: Code SQL)

    Pièce jointe 192041

    La numérotation des "Column" commence à zéro pour la première, puis, 1, 2, etc.

    Donc si les données que vous cherchez se trouvent dans la seconde colonne, l'expression sera : ".Column(1)"

    J'espère avoir été clair dans mon explication.. dans le cas contraire, postez la partie de votre BDD compressée, je vous montrerai cela par l'exemple.
    Nous n'héritons pas la Terre de nos ancêtres, nous l'empruntons à nos enfants, prenons-en soin !
    (proverbe amérindien)

  5. #5
    Candidat au Club
    Homme Profil pro
    Technicien maintenance
    Inscrit en
    Décembre 2014
    Messages
    8
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 49
    Localisation : France, Loire (Rhône Alpes)

    Informations professionnelles :
    Activité : Technicien maintenance

    Informations forums :
    Inscription : Décembre 2014
    Messages : 8
    Points : 4
    Points
    4
    Par défaut
    Merci pour la réponse, je ne peux rien tester, la mise à jour de mon windows 10 a fait sauter l'activation de mon office

    Mais j'avais bien remplacer le x et ça ne fonctionnait pas. Mais j'avais testé en essayant de mettre une zone de texte qui affiche la sélection mais rien ne s'affiche. Je passe surement à côté d'un truc bête!

    EDIT: c'est revenu. La requete pour la liste déroulante selctcat est :
    Code SQL : Sélectionner tout - Visualiser dans une fenêtre à part
    SELECT tcategorie.N°, tcategorie.CATEGORIE FROM tcategorie;

    j'ai ajouté une zone de texte sur le même formulaire pour voir si cela sélectionne mais elle reste désespérément vide! le contenu est récupéré par :
    Code SQL : Sélectionner tout - Visualiser dans une fenêtre à part
    SELECT tLicencies.NOM_PERS, tLicencies.CATEGORIE FROM tLicencies WHERE (((tLicencies.CATEGORIE)=[Formulaires]![fChoix catégorie]![Selectcat]));

    Si je rajoute le .column(1), j'ai une erreur au dessus.

    la mise à jour du contenu de la boite texte est obtenue via un Me!Liste4.Requery sur l'évènement après MAJ

    J'avais trouvé un exemple sur lequel ça fonctionne mais impossible de le reproduire sur ma propre base!

  6. #6
    Membre expérimenté Avatar de bernardmichel
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Janvier 2004
    Messages
    1 181
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Vaucluse (Provence Alpes Côte d'Azur)

    Informations professionnelles :
    Activité : Développeur informatique

    Informations forums :
    Inscription : Janvier 2004
    Messages : 1 181
    Points : 1 591
    Points
    1 591
    Par défaut
    Bonsoir !

    Est-il possible d'avoir un extrait de votre base ?
    Nous n'héritons pas la Terre de nos ancêtres, nous l'empruntons à nos enfants, prenons-en soin !
    (proverbe amérindien)

  7. #7
    Candidat au Club
    Homme Profil pro
    Technicien maintenance
    Inscrit en
    Décembre 2014
    Messages
    8
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 49
    Localisation : France, Loire (Rhône Alpes)

    Informations professionnelles :
    Activité : Technicien maintenance

    Informations forums :
    Inscription : Décembre 2014
    Messages : 8
    Points : 4
    Points
    4
    Par défaut
    la voici vidée de ses licenciés

    RCF-vide.zip

  8. #8
    Membre expérimenté Avatar de bernardmichel
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Janvier 2004
    Messages
    1 181
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Vaucluse (Provence Alpes Côte d'Azur)

    Informations professionnelles :
    Activité : Développeur informatique

    Informations forums :
    Inscription : Janvier 2004
    Messages : 1 181
    Points : 1 591
    Points
    1 591
    Par défaut
    Bonjour,


    Voici en retour votre BDD.

    https://onedrive.live.com/redir?resi...int=file%2crar


    Comme vous pourrez le constater, il s'agissait bien des colonnes de votre liste déroulante. L'explication est la suivante:


    Lorsque vous séléctionniez une catégorie, s'affichait à l'écran la catégorie en toutes lettres. Par contre, la valeur de votre liste était un chiffre (entre 1 et 12).
    Donc si vous donniez à chercher ce chiffre dans la tlicencies il ne la trouvait pas dans le champ catégorie.


    Donc, une façon de résoudre votre problème était la suivante:
    1. j'ai supprimé l'identifiant de votre liste déroulante pour n'en retenir que la valeur de la seconde colonne (la catégorie).
    2. A titre d'exemple, j'ai intégré votre requête directement dans la source de votre Etat (nul besoin d'avoir une requête externe pour ceci)


    Je vous ai également construit un exemple de présentation de votre formulaire (à prendre ou à laisser, selon votre envie)
    Le formulaire créé se nomme "frmLicencies" et j'ai également créé une copie de votre Etat afin de l'appeler depuis ce nouveau formulaire.


    Bon week-end !
    Nous n'héritons pas la Terre de nos ancêtres, nous l'empruntons à nos enfants, prenons-en soin !
    (proverbe amérindien)

  9. #9
    Candidat au Club
    Homme Profil pro
    Technicien maintenance
    Inscrit en
    Décembre 2014
    Messages
    8
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 49
    Localisation : France, Loire (Rhône Alpes)

    Informations professionnelles :
    Activité : Technicien maintenance

    Informations forums :
    Inscription : Décembre 2014
    Messages : 8
    Points : 4
    Points
    4
    Par défaut
    Merci beaucoup, je vais regarder ça à tête reposée! une journée avec 120 gamins de 5 à 11 ans, ça use!

Discussions similaires

  1. [AC-2007] Ouvrir état sur liste déroulante.
    Par johndi dans le forum IHM
    Réponses: 3
    Dernier message: 10/05/2013, 07h34
  2. [AC-2003] Ouvrir formulaire sur enregistrement liste déroulante.
    Par Matt014 dans le forum IHM
    Réponses: 3
    Dernier message: 23/12/2010, 13h45
  3. Réponses: 6
    Dernier message: 08/09/2009, 14h35
  4. Réponses: 4
    Dernier message: 16/06/2005, 15h37

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