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 :

Sélection liste déroulante table


Sujet :

IHM

  1. #1
    Futur Membre du Club
    Homme Profil pro
    Étudiant
    Inscrit en
    Novembre 2016
    Messages
    7
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 29
    Localisation : France, Finistère (Bretagne)

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Novembre 2016
    Messages : 7
    Points : 6
    Points
    6
    Par défaut Sélection liste déroulante table
    Bonjour à tous,

    Sous Access, j'ai créé deux tables T1 et T2. La table T2 contient une liste d'élément qui sert à une liste déroulante d'un champ de T1.
    Le problème est que je ne peux pas sélectionner tous les éléments de la liste déroulante de la table T1. Certains fonctionnent et d'autres non donc ils me mettent une autre valeur de la liste ...

    Je ne sais pas si j'ai été clair :/

    En tout merci pour ce que vous faites et merci d'avance,

    LaKtin

  2. #2
    Modérateur

    Homme Profil pro
    Inscrit en
    Octobre 2005
    Messages
    15 365
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Canada

    Informations forums :
    Inscription : Octobre 2005
    Messages : 15 365
    Points : 23 835
    Points
    23 835
    Par défaut
    Bonjour.

    Pourrais-tu poster le SQL (ou une copie d'écran) de la requête qui alimente ta liste déroulante et donner un exemple de ce que tu attends et de ce que tu obtiens ?

    A+

  3. #3
    Futur Membre du Club
    Homme Profil pro
    Étudiant
    Inscrit en
    Novembre 2016
    Messages
    7
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 29
    Localisation : France, Finistère (Bretagne)

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Novembre 2016
    Messages : 7
    Points : 6
    Points
    6
    Par défaut Simplification
    Bonjour,

    J'ai longtemps cherché une solution au problème.
    Et j'en suis arrivé à l'endroit où je ne comprend pas, le problème est plus simple car cela venait du début de la réalisation de mon application.

    Dans mon application, j'ai deux tables : T_Fréquence et Table 1.
    Je voudrais pouvoir créer une liste déroulante dans Table 1, des différentes fréquences de T_Fréquence.
    Le problème est que lorsque je créé une liste déroulante dans Table 1 et que je veux sélectionner les différentes fréquences, je ne peux pas.
    Il me limite aux données :
    (1) Moins de 1 fois par an , (2) 1 fois par an et plus , (3) 1 fois par mois, (4) Hebdomadaire

    Je pense que le problème vient de la double colonne et des valeurs (1,2,3,4) qui sont les mêmes pour les deux listes différentes.

    Je vous joints les captures d'écran de mon Access.

    Merci d'avance,

    QLSNom : T_Fréquence.PNG
Affichages : 628
Taille : 18,3 KoNom : Table1.png
Affichages : 657
Taille : 95,1 KoNom : Table1_Création.PNG
Affichages : 702
Taille : 22,2 Ko

  4. #4
    Modérateur

    Homme Profil pro
    Inscrit en
    Octobre 2005
    Messages
    15 365
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Canada

    Informations forums :
    Inscription : Octobre 2005
    Messages : 15 365
    Points : 23 835
    Points
    23 835
    Par défaut
    Bonjour.

    Ton problème vient de ce que tu as choisi Valeur et non IDF comme champ pour ta liste.

    Et je recommande de ne pas mettre des listes déroulantes dans les tables mais seulement dans les formulaires ou les rapports car cela masque la vraie valeur enregistrée dans la table.

    A+

  5. #5
    Futur Membre du Club
    Homme Profil pro
    Étudiant
    Inscrit en
    Novembre 2016
    Messages
    7
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 29
    Localisation : France, Finistère (Bretagne)

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Novembre 2016
    Messages : 7
    Points : 6
    Points
    6
    Par défaut
    Merci pour ta réponse.
    Cela m'a débloqué puis bloqué sur un point mais j'ai réussi à le résoudre.
    Un autre problème est apparu de ce fait ...

    Dans une table, j'ai 3 champs en zone de liste déroulante (F, G et S) avec 2 colonnes pour chacun (ID et Valeur).
    Mon problème est que je veux calculer F*G*S dans mon champ C.
    Le résultat obtenu est la multiplication des ID de mes champs et je désire la multiplication des valeurs.

    LaKtinNom : Problème.PNG
Affichages : 633
Taille : 11,3 Ko

    Merci d'avance,

  6. #6
    Membre éprouvé

    Homme Profil pro
    Ingénieur retraité
    Inscrit en
    Novembre 2007
    Messages
    904
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Côtes d'Armor (Bretagne)

    Informations professionnelles :
    Activité : Ingénieur retraité

    Informations forums :
    Inscription : Novembre 2007
    Messages : 904
    Points : 1 229
    Points
    1 229
    Par défaut
    Bonjour

    Dans une table, j'ai 3 champs en zone de liste déroulante (F, G et S) avec 2 colonnes pour chacun (ID et Valeur)
    Dans une ou dans 3 tables ???
    Si 3 tables, tu crées une requête basée sur ces 3 tables.

    Dans une table, un champ calculé ne peut inclure que des champs issus de cette table.

  7. #7
    Futur Membre du Club
    Homme Profil pro
    Étudiant
    Inscrit en
    Novembre 2016
    Messages
    7
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 29
    Localisation : France, Finistère (Bretagne)

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Novembre 2016
    Messages : 7
    Points : 6
    Points
    6
    Par défaut
    Re,

    Tout se passe dans une table comme je l'ai précisé dans mon problème.
    Du coup, avec ce que tu dis, je peux normalement le faire ? Mais comment ?

    Car je veux que le champ F et G soient multipliés mais avec la deuxième valeur de la liste déroulante (Valeur et pas ID).

    Merci d'avance,

  8. #8
    Modérateur

    Homme Profil pro
    Inscrit en
    Octobre 2005
    Messages
    15 365
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Canada

    Informations forums :
    Inscription : Octobre 2005
    Messages : 15 365
    Points : 23 835
    Points
    23 835
    Par défaut
    Bonjour.

    Car je veux que le champ F et G soient multipliés mais avec la deuxième valeur de la liste déroulante (Valeur et pas ID).
    Les calculs dans les tables nont possibles que sur les champs de la table.
    La infomation affichées dans la liste déroulante ne fait pas partie des champs, ce sont des éléments d'interface utilisateur.

    Ce genre de choses n'est possible, même si pas recommandé, que dans un formulaire.

    Les soutions possibles sont :
    • Faire une requête de MAJ pour faire le calcul (pas recommandé).
      Le principal défaut est que si les données source change, le résultat restera figé à l'ancienne valeur jusqu'à une nouvelle exécution de la requête de MAJ.
    • Faire une requête de sélection pour afficher le calcul.
      Là le calcul est dynamique, le résultat tiendra compte des valeurs actuelles des valeurs.
    • Faire une macro de données pour faire le calcul.
      Résoud le problème de la requête de MAJ. La MAJ se fait à chaque fois que l'un des éléments change.
    • Faire un formulaire et passer sur chacun des enregistrements en ressélectionnant pour fair le calcul (pas franchement recomandé non plus).
      Ça c'est surtout valide si tu pars d'un BD vide et que tu ajoutes tes données après.
      Pour une BD existante c'est presque garantir qu'on va en manquer et que le calcul ne sera pas correct.
      L'inconvénient est le même que celui de la requête de MAJ.


    A+

  9. #9
    Futur Membre du Club
    Homme Profil pro
    Étudiant
    Inscrit en
    Novembre 2016
    Messages
    7
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 29
    Localisation : France, Finistère (Bretagne)

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Novembre 2016
    Messages : 7
    Points : 6
    Points
    6
    Par défaut
    Merci pour ta réponse.
    Je pensais donc faire la requête de sélection pour afficher le calcul mais je ne sais pas comment m'y prendre...
    J'ai regardé des tutoriels mais je n'ai rien trouvé qui se rapproche de mon problème.

    Merci d'avance,

  10. #10
    Modérateur

    Homme Profil pro
    Inscrit en
    Octobre 2005
    Messages
    15 365
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Canada

    Informations forums :
    Inscription : Octobre 2005
    Messages : 15 365
    Points : 23 835
    Points
    23 835
    Par défaut
    Bonjour.

    Les requêtes de sélection sont les plus simples.
    Tu peux utiliser l'assistant pour créer ta requête de base qui va te donner les infos dont tu as besoin pour ton calcul.
    Une fois que tu as tous les champs (colonnes) dont tu as besoin il te suffit d'ajouter un champ calculé avec la formule que tu veux.
    Il devrait ressembler à :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    Nz(tblFrequence.[Valeur]; 0) * Nz([Table1].[F]; 0) * Nz([Table1].[G]; 0)
    Le Nz sert à gérer le cas où l'info est Null. Attention j'ai eu un cas où le Nz a fait sauter mes décimales. Il a afllu que j'utilise iif(isnull([MonChamp]); 0; [MonChamp]).

    Et pense à changer le non de Table1 pour quelque chose de plus signficatif.

    A+

Discussions similaires

  1. [AC-2010] Synchronisation sélection liste déroulante vers onglets
    Par macakou99 dans le forum IHM
    Réponses: 2
    Dernier message: 22/10/2012, 16h09
  2. [AC-2007] Liste Déroulante, Tables
    Par Alex'78 dans le forum VBA Access
    Réponses: 10
    Dernier message: 30/04/2010, 17h40
  3. [AJAX] Garder sélection liste déroulante
    Par arthuro45 dans le forum AJAX
    Réponses: 8
    Dernier message: 03/11/2009, 16h49
  4. Réponses: 1
    Dernier message: 02/07/2007, 15h57
  5. Sélection liste déroulante puis affichage de text box
    Par dolu007 dans le forum Général JavaScript
    Réponses: 8
    Dernier message: 11/11/2006, 00h03

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