cs_Lolo92160
Messages postés5Date d'inscriptiondimanche 22 octobre 2006StatutMembreDernière intervention16 décembre 2008
-
9 déc. 2008 à 17:19
cs_Orohena
Messages postés577Date d'inscriptionvendredi 26 septembre 2008StatutMembreDernière intervention20 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.
cs_Orohena
Messages postés577Date d'inscriptionvendredi 26 septembre 2008StatutMembreDernière intervention20 novembre 20104 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