Pastresbon44
Messages postés1Date d'inscriptiondimanche 13 novembre 2011StatutMembreDernière intervention13 novembre 2011
-
13 nov. 2011 à 18:48
galaxy2009
Messages postés144Date d'inscriptiondimanche 24 avril 2011StatutMembreDernière intervention16 juin 2016
-
14 nov. 2011 à 11:31
Bonjour à Tous,
J'ai :
- une base de données access Répertoire avec les champs NOM, PRENOM, TEL, MAIL.
- une fenêtre VBA avec un combobox CBliste où je sélectionne les noms de la base de données et 3 textbox.
Une fois un nom sélectionné, je souhaite faire apparaître dans les textbox le prénom, le tél et le mail.
Ci-dessous mon code pour accéder à ma bdd et permettre l'affichage des noms dans la combobox.
Private Sub chargeCB()
Dim MyRecordset As ADODB.Recordset
Dim MySQL As String
Set MyRecordset = New ADODB.Recordset
CBliste.Clear
MySQL = "SELECT * FROM [Répertoire]"
MyRecordset.Open MySQL, MyConnection
MyRecordset.MoveFirst
While Not MyRecordset.EOF
If Not IsNull(MyRecordset.Fields(0).Value) Then
CBliste.AddItem MyRecordset.Fields(4).Value
Else
CBliste.AddItem ""
End If
MyRecordset.MoveNext
Wend
MyRecordset.Close
Set MyRecordset = Nothing
End Sub
Comment faire pour faire apparaître les informations Prénom, tél et mail dans les textbox ?
NHenry
Messages postés15090Date d'inscriptionvendredi 14 mars 2003StatutModérateurDernière intervention 6 novembre 2023159 13 nov. 2011 à 19:30
Bonjour,
Tu dois mémoriser pour chaque élément au minimum l'Id de la ligne.
Pour cela, tu peux faire un ListView avec une ou plusieurs colonnes cachées.
Une ListBox à coté pour lister les Id.
Ou alors une classe avec une collection.
Ton code est du VB6, pas du .NET, je déplace donc.
---------------------------------------------------------------------
[list=ordered][*]Pour poser correctement une question et optimiser vos chances d'obtenir des réponses, pensez à lire le règlement CS et aussi ce lien[*]Quand vous postez un code, merci d'utiliser la coloration syntaxique (3ième icône en partant de la droite : )
[*]Si votre problème est résolu (et uniquement si c'est le cas), pensez à mettre "Réponse acceptée" sur le ou les messages qui vous ont aidés./list ---
galaxy2009
Messages postés144Date d'inscriptiondimanche 24 avril 2011StatutMembreDernière intervention16 juin 2016 14 nov. 2011 à 11:31
Bonjour,
ce code et en vb 2005 et c'est à vous de l'adapter avec vb6
alors dans ton combobox tu met ce code
If (Me.ComboBox1.SelectedItem IsNot Nothing) Then
Dim v As DataRow = CType(Me.ComboBox1.SelectedItem, DataRowView).Row
Me.Txtprenom.Text = v("prenom")
Console.WriteLine("le nom de ta table : prenom={0} ; nom={1}", v("prenom"), v("nom"))
End If
If (Me.ComboBox1.SelectedItem IsNot Nothing) Then
Dim v As DataRow = CType(Me.ComboBox1.SelectedItem, DataRowView).Row
Me.Txttel.Text = v("tel")
Console.WriteLine("le nom de ta table : tel={0} ; nom={1}", v("tel"), v("nom"))
End If
ainsi de suite pour les autres champs.