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 :

Actualisation de valeurs d'une liste descendante


Sujet :

IHM

  1. #1
    Futur Membre du Club
    Inscrit en
    Novembre 2007
    Messages
    12
    Détails du profil
    Informations forums :
    Inscription : Novembre 2007
    Messages : 12
    Points : 6
    Points
    6
    Par défaut Actualisation de valeurs d'une liste descendante
    Bonjour a tous.

    Je suis en train de developper une base de donne pour suivre les etats de trainings de chaque employe.

    Lors de ma premiere fenetre, je demande a l'utilisateur d'indiquer la platform qui le concerne.
    Ensuite, je souhaiterai afficher lors des autres fenetre, la liste des employes ne correspondant que a ceux qui travaillent dans cette platforme...Je n'y arrive pas...Je dois surement etre un peu novice mais bon, il faut bien commencer un jour...

    Ma table de reference pour les employes comporte tous les employes de l'entreprise avec une colonne Platform...

    Je ne trouve pas comment faire une requete s'apppuyant sur une valeur d'un liste descendante d'une fenetre precedemment utilisee...

    Merci pour votre aide

    Roman

  2. #2
    Membre averti
    Directeur technique
    Inscrit en
    Novembre 2006
    Messages
    584
    Détails du profil
    Informations personnelles :
    Âge : 61

    Informations professionnelles :
    Activité : Directeur technique

    Informations forums :
    Inscription : Novembre 2006
    Messages : 584
    Points : 403
    Points
    403
    Par défaut
    Bonjour,
    J'ai compris que tu as une première liste déroulante où on choisit une plateform.
    Ensuite une deuxième liste où n'apparaitrait que les employés concerné par la plateforme ci-avant choisie.
    Si c'est bien cela alors:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    '__ Affecte à la combo Employés les valeurs correspondantes à la sélection de la combo Plateforme
    cmbEmploye.RowSource = "SELECT EmployeID FROM tblEmployes " & _
                              "WHERE Platform = '" & cmbPLateforme & "';"
    (le contenu des combos est du texte)
    NB: il y a déjà eu pas mal de littérature à ce sujet ici même...

  3. #3
    Futur Membre du Club
    Inscrit en
    Novembre 2007
    Messages
    12
    Détails du profil
    Informations forums :
    Inscription : Novembre 2007
    Messages : 12
    Points : 6
    Points
    6
    Par défaut
    Merci pour cette reponse,

    J'ai remplace les termes correspondant a ma base de donnee, mais apparemment je ne dois pas savoir faire pour l'activer...Ou peut-etre suffit il de supprimer quelques " ou ' de votre expression...Pourriez vous me debloquer sur ce point la svp?

    merci

  4. #4
    Membre averti
    Directeur technique
    Inscrit en
    Novembre 2006
    Messages
    584
    Détails du profil
    Informations personnelles :
    Âge : 61

    Informations professionnelles :
    Activité : Directeur technique

    Informations forums :
    Inscription : Novembre 2006
    Messages : 584
    Points : 403
    Points
    403
    Par défaut
    J'ai oublié de te préciser que le code est exécuté sur l'évènement "Après MAJ" de la liste cmbPlateforme.
    Si le contenu de la liste déroulante "Plateforme" est du texte la syntaxe est correcte.

  5. #5
    Futur Membre du Club
    Inscrit en
    Novembre 2007
    Messages
    12
    Détails du profil
    Informations forums :
    Inscription : Novembre 2007
    Messages : 12
    Points : 6
    Points
    6
    Par défaut
    Bonjour

    Bon je ne trouve vraiment pas mon erreur et pourtant rien ne s'actualise...

    Voici ce que j'ai ecrit dans la partie AfterUpdate de ma comboboxPlatform

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    Private Sub DropPlatform_AfterUpdate()
    ManagerFormPerEmployee.DropFullName.RowSource = "SELECT First&LastName FROM Employee " & "WHERE Platform = '" & ManagerFormFirstChoice.DropPlatform_AfterUpdate & "';"
    End Sub

    Il y a t il quelquechose d'incorrect las dedans.

    Ma fenetre ou je choisi la platforme s'appelle "ManagerFormFirstChoice"
    celle ou je veut une liste mise a jour en fonction de la platform choisie est "ManagerFormPerEmployee" et la combobox s'appelle "DropFullName"
    La table ou je stocke mes info est "Employee" et la colonne des noms est "First&LastName" et celle pour les platformes est "Platform"

    Ca me gngngngnng de pas arriver a cela car ca me bloque pour la liste de ma BD...Je peux pas avancer beaucoup plus...

    Merci d'avance

    Roman

  6. #6
    Membre averti
    Directeur technique
    Inscrit en
    Novembre 2006
    Messages
    584
    Détails du profil
    Informations personnelles :
    Âge : 61

    Informations professionnelles :
    Activité : Directeur technique

    Informations forums :
    Inscription : Novembre 2006
    Messages : 584
    Points : 403
    Points
    403
    Par défaut
    Il faut impérativement employer les balises de code # sur le forum.
    Au lieu de:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    Private Sub DropPlatform_AfterUpdate()
    ManagerFormPerEmployee.DropFullName.RowSource = "SELECT First&LastName FROM Employee " & "WHERE Platform = '" & ManagerFormFirstChoice.DropPlatform_AfterUpdate & "';"
    Essayes:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    Private Sub DropPlatform_AfterUpdate()
    Forms.ManagerFormPerEmployee.DropFullName.RowSource = "SELECT First&LastName FROM Employee " & "WHERE Platform = '" & Me.ManagerFormFirstChoice.DropPlatform & "';"
    On suppose que la "fenêtre" (le formulaire) ManagerFormPerEmployee est ouverte au moment de la MAJ de DropPlatform.

    D'autre part je ne sais pas si l'emploi du caractère & est indiqué dans le nom d'un champ ou d'une variable (perso, j'évite)...
    As-tu compilé ton code?
    As-tu une erreur?

  7. #7
    Futur Membre du Club
    Inscrit en
    Novembre 2007
    Messages
    12
    Détails du profil
    Informations forums :
    Inscription : Novembre 2007
    Messages : 12
    Points : 6
    Points
    6
    Par défaut
    OK, merci pour ton aide mais ca ne marche toujours pas, quand je compile il n'y a pas de probleme...Mais quand je choisi ma platform, rien ne se passe...
    Si tu as un email direct, je peux t'envoyer ma BD, ca sera peut-etre plus simple...Par le forum, c'est trop gros...1,6MB zippe...

    De plus ce qui complique un peu la chose est que je dois mettre a jour la BD, creee par qulequ un d'autres il y a quelques annees de cela...Donc ca rend la connaissance de l'application moins grande


    Merci d'avance

    ROman

  8. #8
    Membre averti
    Directeur technique
    Inscrit en
    Novembre 2006
    Messages
    584
    Détails du profil
    Informations personnelles :
    Âge : 61

    Informations professionnelles :
    Activité : Directeur technique

    Informations forums :
    Inscription : Novembre 2006
    Messages : 584
    Points : 403
    Points
    403
    Par défaut
    Ajoute un requery pour mettre à jour la liste
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    Private Sub DropPlatform_AfterUpdate()
    Forms.ManagerFormPerEmployee.DropFullName.RowSource = "SELECT First&LastName FROM Employee " & "WHERE Platform = '" & Me.ManagerFormFirstChoice.DropPlatform & "';"
    Forms.ManagerFormPerEmployee.DropFullName.requery

  9. #9
    Futur Membre du Club
    Inscrit en
    Novembre 2007
    Messages
    12
    Détails du profil
    Informations forums :
    Inscription : Novembre 2007
    Messages : 12
    Points : 6
    Points
    6
    Par défaut
    Quand je choisis ma platform avec ce code, j'ai l'erreur suivante:

    Compil Error:
    Method or data member not found

    avec surligne ".ManagerFormFirstChoice" de "Me.ManagerFormFirstChoice"

    Si j'enleve le "Me." J'ai:

    Compil Error:
    Can't find project or Library

    Alors du coup je ne comprend pas, j'ai verifie un nombre de fois assez important que j'ai bien ecrit le nom de ma form pour dire que l'erreur ne provient pas de la...

    J'ai remarque que dans la partie gauche de VB, les noms des form etaient differents...Ils ont "Form_" devant chacune d'elles... Cependant, si je met ce nom la, sans le "Me.", je n'ai plus de message d'erreur mais quand je clique pour aller vers ma form ManagerFormPerEmployee, J'ai une messageBox qui apparait me demandant "Enter Parameter Value" First et ensuite une deuxieme me demandant la valeur de LastName. Lorsque je remplie cela, j'obtiens le meme nombre de personnes que je devrait avoir correspondant a ma platform, mais avec tous le meme nom, celui que j'ai rentre, dans les message box, celui ci pouvant etre tout a fait different de ceux present dans ma table employee...

    Cela provient t il du fait que ma colonne se nomme, First&LastName ( avec un & au milieu comme tu l'as mentionne plus haut )? Je prefere poser la question avant de commencer toute modification car si je modifie ca, il faut que je trouve tous les endroits ou cette colonne est utilisee pou ne pas perturber le reste de l'application...

    Merci d'avance

  10. #10
    Membre averti
    Directeur technique
    Inscrit en
    Novembre 2006
    Messages
    584
    Détails du profil
    Informations personnelles :
    Âge : 61

    Informations professionnelles :
    Activité : Directeur technique

    Informations forums :
    Inscription : Novembre 2006
    Messages : 584
    Points : 403
    Points
    403
    Par défaut
    -Je te confirme que l'on ne met jamais de caractères spéciaux dans les noms de champ @, &, °, et touti quanti.
    Essayes déjà de le mettre entre crochets [ ].
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    SELECT [First&LastName] FROM 
    . Il existe un exellent tutoriel à ce sujet ici.
    -Ne tiens pas compte du "Form_" qui préfixe les objets dans l'explorateur d'objets.
    -Me. veut-dire ".Moi" en français et désigne donc l'objet dans lequel la variable se trouve.
    -Donnes nous ton code lorsque tu le modifie.

Discussions similaires

  1. Réponses: 3
    Dernier message: 21/11/2013, 12h59
  2. [AC-2003] Actualiser les valeurs d'une liste déroulante
    Par maxdeveloppeur dans le forum IHM
    Réponses: 0
    Dernier message: 12/04/2012, 09h26
  3. Réponses: 1
    Dernier message: 29/09/2005, 11h10
  4. Ajouter un valeur dans une liste modifiable
    Par ancylia dans le forum Access
    Réponses: 1
    Dernier message: 22/09/2005, 12h50
  5. valeur d'une liste déroulante
    Par leeloo076 dans le forum ASP
    Réponses: 7
    Dernier message: 15/04/2004, 16h11

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