Bd access et combo

citt Messages postés 209 Date d'inscription dimanche 8 juin 2003 Statut Membre Dernière intervention 9 février 2012 - 26 sept. 2003 à 16:25
Lesath Messages postés 10 Date d'inscription lundi 29 septembre 2003 Statut Membre Dernière intervention 3 avril 2004 - 1 oct. 2003 à 21:45
salut, j'ai un probleme

ma base se constitu comme ca :
n° ! nom ! prenom ! code !
1 ! dupond ! julien ! 23 !
2 ! dupont ! michel ! 26 !
3 ! dufont ! eric ! 12 !

j'ai un combo qui est remplie avec les nom
et a coté j'ai un textbox ou je voudrait le prenom
mais je voudrait que lorsque je choisie un autre nom le prenom change automatiquement
j'utilise ces deux lignes pour remplir le combo :
Set rs = db.OpenRecordset("select nom from [clients];", , dbForwardOnly)
et je le remplie avec une boucle avec le code principal etant :
Me.Combo.AddItem rs.Fields(0).Value

5 réponses

Badgamme Messages postés 17 Date d'inscription lundi 2 juin 2003 Statut Membre Dernière intervention 3 novembre 2005
26 sept. 2003 à 18:10
Tu peux faire comme ça :

Chargement du combo:
SQL = "SELECT * FROM CLIENTS"
rs.Open SQL, DE.CN, adOpenStatic, adLockReadOnly
Do Until rs.EOF
Combo1.AddItem rs!Nom
Combo1.ItemData(Combo1.NewIndex) = rs!Num
rs.MoveNext
Loop
End Sub

Private Sub Combo1_Validate(Cancel As Boolean)
rs.Find "Num=" & Combo1.ItemData(Combo1.ListIndex), , adSearchForward, 1

If Not rs.EOF Then
Text1.Text = rs!Prenom
Else
rs.MoveFirst
End If

End Sub
0
Pikashoute Messages postés 91 Date d'inscription jeudi 27 février 2003 Statut Membre Dernière intervention 23 décembre 2005
26 sept. 2003 à 22:37
il y a plus simple quand meme ! enfin je pense !

dans la source de ta combo, tu mets le sql de ta requete.
"SELECT nom, prenom from Nom_table;"

ensuite dans le nombre de colonnes (tjs dans les proprietes), tu mets 2, et dans taille des colonnes tu mets "2,50cm;0cm

=>ce qui veut dire que tu affiche le nom mais tu caches le prenom pour ta zone de liste

maintenant, tu dois insérer le code que je vais t'ecrire dans "Après MAJ" dans les proprietes de ta zone de liste :

me.txt_nom.value=me.combo.column(1)
0
Badgamme Messages postés 17 Date d'inscription lundi 2 juin 2003 Statut Membre Dernière intervention 3 novembre 2005
29 sept. 2003 à 09:28
Arf, c'est dans Access pas dans VB qu'on code !!!
Désolé, j'aurai du m'abstenir !
0
Lesath Messages postés 10 Date d'inscription lundi 29 septembre 2003 Statut Membre Dernière intervention 3 avril 2004
1 oct. 2003 à 21:41
ta_requete = "SELECT * from ta_table"
ton_recordset = ta_base.openrecordset (ta_requete, dbopendynaset)

ton_recordset.FindFirst "nom = '" & ta_combobox.Text & "' "
ton_textbox = ton_recordset("prenom")
0

Vous n’avez pas trouvé la réponse que vous recherchez ?

Posez votre question
Lesath Messages postés 10 Date d'inscription lundi 29 septembre 2003 Statut Membre Dernière intervention 3 avril 2004
1 oct. 2003 à 21:45
une précision :
le findfirst et l alimentation de la textbox faut le mettre dans l evenement Click() de la combo box, et fo verifier que le text de la combo est pas vide sinon ca peu faire des erreurs:

private sub ta_combobox_Click()
if ta_combobox.text <> "" then
ton_recordset.FindFirst "nom = '" & ta_combobox.Text & "' "
ton_textbox = ton_recordset("prenom")
endif
endsub
0
Rejoignez-nous