VBA comboxbox vers multiples textbox

ginger -  
Polux31 Messages postés 7219 Statut Membre -
Bonjour,

Je débute en programmation VBA et je souhaite faire un petit programme pour m'aider dans mon travail.
J'ai réussi à créer l'apparence, les différents objets.
Je cherche le code qui me permettrait la chose suivante:
J'ai une combobox, je choisis dans celle-ci une possibilité, laquelle possibilité revoie à 3 réponses, j'aimerais voire ces 3 réponses affichées dans 3 textbox différentes.

Ex: une feuille excel servant de base de donnée, avec 3 colonnes, 1 nom, 1 prénom et 1 age
Losrque je choisis dans ma combobox, un nom, dans les 3 textbox s'affichent le nom, le prénom et l'age.
Pour l'instant la seule chose que j'arrive à faire, c'est afficher seulement le nom dans la 1ere textbox.

Merci par avance!!!
Configuration: Windows XP
Internet Explorer 6.0

3 réponses

  1. icomicar Messages postés 81 Statut Membre 2
     
    salut :
    d'abord tu ouvre ta bse tu te place sur la table en question et tu selectionne l'enregistrement
    par exemple avec une listboxe
    Set rs = db.OpenRecordset("select * from la table where nom='" + Trim(List1.Text) + "'")
    s'il n'ya pas d'enregistrement un message et arrete la recherche
    if rs.eof then msgbox(" blabla"):exit sub
    sinon affiche le resultat
    pour eviter les messages d'erreur en cas de valeur nul(on error resume next)
    On Error Resume Next
    Text1(0) = rs("nom")
    Text1(1) = rs("preno")
    Text1(2) = rs("age")
    Voila ! je dis pas que c'est la meilleure facon ,vu que je suis amateur mais c'est ce que moi je fais pour programmé une recherche et afficher son resultat.bon courage
    0
  2. ginger
     
    Merci beaucoup, ça n'a pas fonctionné de cette maniere donc j'ai trouvé autrement !!!!
    0
  3. Polux31 Messages postés 7219 Statut Membre 1 204
     
    Bonjour,

    Effectivement ça ne peut pas marcher, ce qu'a donné icomicar marche pour une base de données, mais EXCEL N'EST PAS UNE BASE DE DONNEES ...

    Pour ton cas voilà ce que je propose :

    Sub Search()
    Dim strCbo As String
    Dim i As Long

    With Worksheets(1)
    'On suppose que la colonne A contient les noms du combobox, la colonne B les prénoms, le colonne C les âges et que la ligne 1 contient le libellé des colonnes

    strCbo = cboNom.Text
    i = 2

    While .Range("A" & i).Value <> ""
    If .Range("A" & i).Value = strCbo Then
    UserForm1.TxtNom.text = .Range("A" & i).Value
    UserForm1.TxtPrenom.text = .Range("B" & i).Value
    UserForm1.TxtAge.text = .Range("C" & i).Value
    End If
    i = i + 1
    Wend
    End Sub

    bon courage

    ;o)

    Polux
    0