Remplire combo-box en Access

daveplus Messages postés 2 Statut Membre -  
 Ben -
je veux remplire un combo box par le resultat de mon SQL
en access comment faire ?
Merci
encore je veux que mon formulaire ne sois pas lier a la base de donner parceque lorsque je faie la selection dans une liste il est enregistrer dans ma table

8 réponses

  1. Aki
     
    Pour ne pas lier avec tes champs.

    Il est nécessaire d'avoir au préalable de sélectionner "Liste de valeur" au lieu de "Table/requete" dans la source de la combo.

    Dans une combobox, tu as les méthodes : additem et removeitem pour manipuler facilement une combo

    Bonne amusement
    1
  2. Ben
     
    Bonjour à tous,

    Je viens à vous car je suis débutant en MS Access et le language VB et je developpe une appli' de gestion des utilisateurs pour sécuriser une base de données en attribuant différents droits (Insert/Update/Delete) pour chacun des forms selon le user..

    J'ai jusqu'ici réussis, à récupérer le nom du user logué, son ID et lui attribuer des droits sur le form en cours...

    Je cherche maintenant à créer un écran de saisie pour l'admin qui lui servirait à mettre à jour la table que j'ai créée servant à assigner des droit spécifique selon le user logué...

    J'ai donc creé un nouveau form avec 2 comboboxes, un affichant les différents profiles (admin/user/visitor) et le second qui affiche la liste des forms avec dessous 3 bouton à cocher pour selectionner les droits (delete/update/insert) à appliquer au form selectionné précedement et que si rien n'est selectionné dans l'un des deux combo ---> MSGBOX "Please select a profile ou form"

    Mais je ne sais pas du tout comment m'y prendre pour parametrer cela :( PLEASE HELP

    Voilà voilà merci d'avance à tous !
    1
  3. Thibal_jam Messages postés 50 Statut Membre 3
     
    Salut,

    Je suis pas sur d'avoir tout compris:

    Tu veux baser une combo sur le resultat d'une requete dans un formulaire indépendant?

    c'est ça que tu veux faire?

    répond moi je peux t'aider

    Thibal
    0
    1. dave plus
       
      Merci pour votre aide.
      je m'explique:
      dans mon fourmulaire j ai 2 combo box la premier contient le code,
      alors je veux lorsque je selectionné un Code dans Combo Box (evennemet Click ) je dois remplire la deuxieme Combo box

      Voila mon code :
      -----------------------------------------------------------------------
      Private Sub Combo12_Click()
      Dim dbs As Database, Rst As Recordset
      Dim Mysql As String

      Mysql = " SELECT [Code Association], [Type Association]," & _
      " [Code ville] FROM Associations " & _
      " Where [Code ville]= " & Combo1.Text & ";"
      Set dbs = CurrentDb
      ' Open recordset on Orders table.
      Set Rst = dbs.OpenRecordset(Mysql, dbOpenDynaset)

      If Rst.RecordCount >= 1 Then Rst.MoveFirst

      While Not Rst.EOF
      ' Combo2 . ????? = "rst.[Code Association]" ??????
      Rst.MoveNext
      Wend
      End Sub

      ---------------------------------------------------------------------------
      0
  4. Vous n’avez pas trouvé la réponse que vous recherchez ?

    Posez votre question
  5. daveplus Messages postés 2 Statut Membre
     
    Merci pour votre aide,
    je m'explique
    dans mon formulaire j ai 2 Combo Box .
    je veux remplire la deuxieme Combo box selon le choix du premier Combo Box.
    la 1 Combo box contient le [Code ville]
    Voila mon SQL (le Code):
    ----------------------------------------------
    Private Sub Combo1_Click()

    Dim dbs As Database, Rst As Recordset
    Dim Mysql As String

    Mysql = " SELECT [Code Association], [Type Association]," & _
    " [Code Ville] FROM Associations " & _
    " Where [Code Ville]= " & Combo1.Text & ";"

    Set dbs = CurrentDb
    Set Rst = dbs.OpenRecordset(Mysql, dbOpenDynaset)

    If Rst.RecordCount >= 1 Then Rst.MoveFirst

    While Not Rst.EOF

    'Combo16 ?????? = "rst.[Code Association]" ????????????

    Rst.MoveNext
    Wend
    End Sub
    ------------------------------------------------------------
    0
  6. zenon Messages postés 729 Statut Membre 180
     
    Pffouh, ça m'a pas l'air simple...

    Pourquoi ne pas simplement créer la 2ème comboBox avec une condition Where faisant référence à la valeur de la première (SELECT.../... WHERE [Code Ville]= Combo1;) et mettre une simple instruction comboBox2.Requery dans la propriété sur click de la première?

    Par ailleurs, je ne comprends pas ce que tu souhaites faire avec ta boucle.
    0
  7. Thibal_jam Messages postés 50 Statut Membre 3
     
    Hello Dave plus,

    Zenon à raison,

    tes deux combo sont indépendentes,
    tu mets l'événement sur le change de la première combo:

    If not isnull(combo0.value)
    If Combo0.Value = "toto" Then
    Combo1.RowSource = "SELECT [T_toto].[name] FROM T_toto; "
    elseif Combo0.Value = "momo" Then
    Combo1.RowSource = "SELECT [T_momo].[name] FROM T_momo; "
    ....
    end if
    end if

    combo1.requery

    ça devrait tourner comme ça

    donne des news

    Thibal
    0
  8. dave plus
     
    Merci pour votre aide les amis
    Ca marche avec combo.RowSource="SELECT * FROM Table ; "
    Merci
    Mais il y a une petite chose qui reste c’est que lorsque je sélectionne un [code] dans Combo_box
    Et je ferme le formulaire son que je saisie les autres Champs, le code est enregistrer dans la Table.
    Y a t-il pas une façon de supprimer la relation entre le formulaire et le base de donner ?
    Je veux utiliser un Bouton pour l’enregistrement (au click )
    0