Ceci est une page optimisée pour les mobiles. Cliquez sur ce texte pour afficher la vraie page.

navigateur de base de données

Boostez vos compétences Excel avec notre communauté !

Rejoignez Excel Downloads, le rendez-vous des passionnés où l'entraide fait la force. Apprenez, échangez, progressez – et tout ça gratuitement ! 👉 Inscrivez-vous maintenant !

Sylvain79

XLDnaute Nouveau
Bonjour à tous,

apres avoir télécharger le fichier Multi_Mini_bd sur le site, j'ai trouvé l'idée du navigateur excellente.

J'ai cherché un peu dans l'editeur vba pour essayé de récupérer la partie du code qui m'interresse, je me suis perdu.

Imaginons une feuille ( la base de données) avec 3 champs : nom, prenom et age. Un userform avec une combobox (nom) et 2 textbox (prenom et age), comment peut on faire en sorte que la combobox est comme source le champ nom, et a chaque nom choisi que les 2 textbox s'incremente des valeur prenom et age correspondant?

Je sait pas si je suis trop clair dans mes propos.

J'ai fait un petit fichier rapide avec un userform.

Merci par avance.
 

Pièces jointes

Re : navigateur de base de données

Bonsoir

Ci dessous du code à coller dans l'USF.
Le combobox contient une information cachée qui correspond au numéro de ligne.
Code:
Private Sub ComboBox1_Change()
If ComboBox1.TopIndex = -1 Then Exit Sub
TextBox1.Value = Sheets("feuil1").Range("b" & ComboBox1.List(ComboBox1.ListIndex, 1))
TextBox2.Value = Sheets("feuil1").Range("c" & ComboBox1.List(ComboBox1.ListIndex, 1))

End Sub


Private Sub UserForm_Initialize()
With ComboBox1
    .ColumnCount = 2
    .ColumnWidths = "90;0"
    .Style = fmStyleDropDownList '
    .BoundColumn = 1 ' combobox1.text contient le nom
    For Each cellule In Sheets("feuil1").Range("a2:a" & Range("a65536").End(xlUp).Row)
            .AddItem cellule.Value
            .List(.ListCount - 1, 1) = cellule.Row
        
    Next cellule
End With

End Sub

JP
 
Re : navigateur de base de données

Bonsoir à tous,

merci beaucoup à vous deux.

Ta réponse Dull me parait beaucoup plus simple et compréhensible pour moi 🙂

Par contre est-il possible de changer les 2 TextBox par 2 ComboBox supplémentaires et ainsi faire son choix soit par nom, par prenom ou bien par age ?

J'ai réussi a modifier le UserForm et modifier le code pour la ComboBox 1 ( je suis mauvais mais la c'etait plutot facile ^^) mais j'y arrive pas pour les 2 autres 🙁

Merci .
 

Pièces jointes

Re : navigateur de base de données

Bonjour Dull,

l'utilité des 2 autres ComboBox est de pouvoir recherché/naviguer soit par nom, par prenom ou par age.

J'ai rajouté ceci pour la 2e combobox:

Private Sub ComboBox2_Change()

Set C = ActiveSheet.Cells.Find(What:=ComboBox2.Value)
ComboBox1.Value = C.Offset(0, -1).Value
ComboBox3.Value = C.Offset(0, 2).Value
End Sub

par contre pour la 3e ça fonctionne pas 🙁
 
Dernière édition:
- Navigue sans publicité
- Accède à Cléa, notre assistante IA experte Excel... et pas que...
- Profite de fonctionnalités exclusives
Ton soutien permet à Excel Downloads de rester 100% gratuit et de continuer à rassembler les passionnés d'Excel.
Je deviens Supporter XLD

Discussions similaires

Les cookies sont requis pour utiliser ce site. Vous devez les accepter pour continuer à utiliser le site. En savoir plus…