Alimenter Listbox

Résolu
cs_bluntz54 Messages postés 14 Date d'inscription mercredi 5 mars 2008 Statut Membre Dernière intervention 15 avril 2008 - 9 avril 2008 à 10:31
Renfield Messages postés 17287 Date d'inscription mercredi 2 janvier 2002 Statut Modérateur Dernière intervention 27 septembre 2021 - 11 avril 2008 à 10:28
Voila j'ai écrit ce bout de code sur mon formulaire comportant une Listbox :
Dim Rs As Recordset
Dim i  As Integer
Set Rs = CurrentDb.OpenRecordset("Table1", dbOpenDynaset)
For i = 0 To Rs.Fields.Count - 1
MsgBox Rs.Fields(i).Name
Modifiable16.AddItem (i)
Next

Dans le but d'alimenter celle-ci par le nom des champs de ma table Table1. Le problème est que cela ne fonctionne pas. Pourriez-vous me dier pourquoi?
Je tiens a préciser que je suis novice sur Access et VBA donc n'allez pas trop loin dans vos explications svp.
Merci beaucoup

3 réponses

Renfield Messages postés 17287 Date d'inscription mercredi 2 janvier 2002 Statut Modérateur Dernière intervention 27 septembre 2021 74
9 avril 2008 à 11:08
pas la peine de rappatrier toutes les données de ta table...

Dim oField As Field
For Each oField In CurrentDb.TableDefs("Table1").Fields
Modifiable16.AddItem oField.Name
Next oField
3
cs_bluntz54 Messages postés 14 Date d'inscription mercredi 5 mars 2008 Statut Membre Dernière intervention 15 avril 2008
9 avril 2008 à 11:40
J'ai changé ma structure en mettant 2 zones de liste :

Private Sub Liste0_Click()
temp = Liste0
'Liste2.ControlSource = "SELECT DISTINCT Chp1 FROM table1"
Liste2.RowSourceType = "Table/Requête"
Liste2.RowSource = "select DISTINCT " & temp & " from table1"
Liste2.Requery
End Sub
ce qui est censé m'afficher ds la 1ere liste le nom des différents champs de ma table et dans l'autre les valeurs inscrites dans le champ sélectionné.
Le 1er affiche bien les champs mais le 2e n'affiche rien.
0
Renfield Messages postés 17287 Date d'inscription mercredi 2 janvier 2002 Statut Modérateur Dernière intervention 27 septembre 2021 74
11 avril 2008 à 10:28
pense a ajouter des séparateurs:


Private Sub Liste0_Click()
temp = Liste0
'Liste2.ControlSource = "SELECT DISTINCT Chp1 FROM table1"
Liste2.RowSourceType = "Table/Requête"
Liste2.RowSource = "select DISTINCT `" & temp & "` from table1"
'# ou, au choix:
'# Liste2.RowSource = "select DISTINCT [" & temp & "] from table1"
Liste2.Requery
End Sub
0
Rejoignez-nous