Combobox remplie grace a Access

cs_Lolo92160 Messages postés 5 Date d'inscription dimanche 22 octobre 2006 Statut Membre Dernière intervention 16 décembre 2008 - 9 déc. 2008 à 17:19
cs_Orohena Messages postés 577 Date d'inscription vendredi 26 septembre 2008 Statut Membre Dernière intervention 20 novembre 2010 - 10 déc. 2008 à 01:57
Bonjour à tous,

Je suis débutant en VB et Access.
Je voudrais savoir deux choses:
- comment remplir une combobox avec  des données provenant d'une base access?
- Lier une deuxième combo (ou listbox) en fonction du choix dans la première. Comme la création de listes sous excel.

Merci d'avance.

1 réponse

cs_Orohena Messages postés 577 Date d'inscription vendredi 26 septembre 2008 Statut Membre Dernière intervention 20 novembre 2010 4
10 déc. 2008 à 01:57
Bonjour

Pour initialiser une combobox, utilise la propriété RowSource avec une liste de valeurs séparées par des virgules. Utilise la méthode Refresh pour actualiser les données de ton formulaire.

Dim mesValeurs As String
mesValeurs = "Lundi;Mardi;Mercredi;Jeudi;Vendredi;Samedi;Dimanche"
maCombo.RowSource = mesValeurs
Me.Refresh

Apparemment, tu veux remplir à partir d'une table. Il suffit donc de lire la table maTable et de créer la variable mesValeurs à partir des données du champ monChamp

Dim dbs As Database
Dim rst As RecordSet
Dim mesValeurs As String
mesValeurs = ""
Set dbs = CurrentDb                                               ' ouvre la base de données
Set rst = dbs.OpenRecordset("maTable", _
    dbOpenDynaset)                                                ' ouvre la table maTable
Do Until rst.EOF
   mesValeurs = mesValeurs & ";" & rst!monChamp  ' concatène le champ monChamp dans mesValeurs
   rst.MoveNext
Loop
rst.Close                                                                ' Ferme la table
dbs.Close                                                              ' Ferme la base de données
maCombo.RowSource = Mid(mesValeurs,2)             ' charge le combobox en éliminant le 1er point-virgule
Me.Refresh                                                            ' réactualise les données du formulaire

Amicalement
0
Rejoignez-nous