Access 2003 liste déroulante

Bjr à tous,
j'ai une liste deroulante (ld_test) qui s'appuie sur une table avec 2 champs :
- test1 qui est la cle primaire en num auto
- test2 qui est du texte

sur le formulaire (toto) j'aimerai stocker la valeur texte (test2) de (ld_test) dans une zone indépendante car par défaut un créant la liste déroulant il prend la clé primaire.

Sur la zone indep j'avais dans source =[test1] car c'est la valeur affiché sur le formulaire et il me retourne la clé et non le texte

Pvz vs m'aider?

Cdt.

8 réponses

  1. C'est la librairie "Microsoft DAO 2.5/3.5 Compatibility..." que tu dois ajouter. Si ça ne marche pas ajoute aussi les autres Microsoft DAO.
    1
    1. Salut,

      Tu dois utiliser l'event "afterupdate" de ta liste déroulante. Quelque chose du genre:

      Private Sub ld_test_AfterUpdate()
      Dim sqlstring as string
      mDb As Database
      mRs As RecordSet
      
      sqlstring = "SELECT test2 from Ta_Table where test1 = '" & ld_test.Value & "'"
      
      Set mDB = CurrentDb
      Set mRs = mDB.OpenRecordset(sqlstring , dbOpenDynaset, dbSeeChanges, dbPessimistic)
      
      Zone_Independante.Value = mRS("test2").Value
      
      End Sub
      --
      Rien n'est plus dangereux qu'une idée quand on a 
      qu'une idée
        :-)
      0
      1. Salut Lelaid,
        J'ai renseigné ta commande et en éxecutant il reconnait pas le
        mDb As Database

        Peux tu m'aider?
        0
        1. Ah zut, tu es en Access 2003...
          Il y a une subtilité, mais je ne sais plus laquelle. Je crois que tu dois ajouter une librairie.

          Quand tu as ta fenêtre de code ouverte, via le menu "Tools--> Reference" ou "Outils--> reference", sélecionne les librairies suivantes:

          Visual Basic For Application
          Microsoft Access 8.0 Object Library
          Microsoft DAO 2.5/3.5 Compatibility...

          J'espère qu'avec ça ça marchera.
          0
          1. Je fais ce que tu m'as dit mais tjs meme msg d'erreur
            par contre j'ai Microsoft Access 9.0 Object Library

            merci pour ton aide LeLaid
            0
            1. Slt a tous,
              Je reprend mon explication de maniere claire

              j'ai 2 tables :
              - 1ere table test
              avec 2 chps :
              - numtest1 num auto cle primaire
              - test2 texte

              -2eme table toto
              avec 3 chps :
              - numtoto num auto cle primaire
              - test1 numerique (Assistant liste de choix lien avec la table test)
              - tel texte

              Ds les relations j'ai numtest1 lié avec test1

              Dans le formulaire toto le source s'appuie sur la table toto

              ds ce formualire j'ai 4 chps:
              - numtoto
              - ld_test1 (liste deroulante) definit par rapport a l'assistant liste de choix dans la table toto
              - tel
              - titi (zone independante) ou je veux stocker la valeur test2 lorsque je selectionne une entite ds ld_test1

              Je pense pas que ce soit compliquer à réaliser.

              Si quelqu'un pourrait m'aider, son aide est la bienvenue.

              Cdt.
              0
            2. dj_oakley,

              Tu n'as pas le choix. Tu dois passer par du code VBA pour réaliser ça. Pour que le code donné plus haut fonctionne, il te faut trouver la librairie manquante.

              Essaye de poser ta question sur le forum du club d'entraide ici:

              http://www.developpez.net/forums/viewforum.php?f=38

              Tu auras ta réponse assez rapidement.

              :-)
              0