Remplir des texbox d'un userform à partir d'une listbox sur un autre userform

Valafar

XLDnaute Nouveau
Bonjour le forum,

Je sollicite votre aide afin de m'aider à trouver la solution qui me bloque dans mon projet.

J'un un userform avec 2 listbox en cascades.
Je souhaiterai que lorsque j'effectue un double clic sur une ligne de ma seconde listbox, l'userform2 s'ouvre et que les textbox soit remplis avec les données correspondantes au choix que je viens d'effectuer.

A noter que dans ma listbox2 je ne fais apparaître que 3 colonnes (cela me sert de résumé), mais la feuille de données (Database) contient 10 colonnes de renseignements.
La dernière étant un lien d'image que je souhaiterai faire aussi apparaître dans mon userform2 lors de la sélection.

J'ai trouvé (sur ce forum :D) un code qui permet de remplir des textbox présent sur le même userform que la listbox

Code:
Private Sub ListBox2_DblClick(ByVal Cancel As MSForms.ReturnBoolean)

Dim Compteur As Integer
     For Compteur = 0 To (ListBox1.ListCount - 1)
        If ListBox2.Selected(Compteur) = True Then
        
                 Me.TextBox10 = Me.ListBox1.List(Compteur, 1)
                 Me.TextBox2 = Me.ListBox1.List(Compteur, 2)
                 Me.TextBox8 = Me.ListBox1.List(Compteur, 3)
                 Me.TextBox3 = Me.ListBox1.List(Compteur, 4)
                 Me.TextBox4 = Me.ListBox1.List(Compteur, 5)
                 Me.TextBox5 = Me.ListBox1.List(Compteur, 6)
            Exit Sub
        End If
        Next
End Sub

Je vous joint mon fichier exemple et le lien du fil sur lequel j'ai trouvé ce code :
https://www.excel-downloads.com/thr...l-a-partir-dun-click-dans-une-listbox.131867/

J'espère avoir été assez clair dans ma demande.

Cordialement.
 

Pièces jointes

  • Val_listbox_vers_userform.xlsm
    24.8 KB · Affichages: 179

Papou-net

XLDnaute Barbatruc
Re : Remplir des texbox d'un userform à partir d'une listbox sur un autre userform

Bonsoir Valafar,

Comme ceci peut-être ?

Code:
Private Sub ListBox2_DblClick(ByVal Cancel As MSForms.ReturnBoolean)
Dim Compteur As Integer
  For Compteur = 0 To (ListBox1.ListCount - 1)
    If ListBox2.Selected(Compteur) = True Then
      With UserForm2
        .TextBox1 = Me.ListBox2.List(Compteur, 1)
        .TextBox2 = Me.ListBox2.List(Compteur, 2)
        .TextBox8 = Me.ListBox2.List(Compteur, 3)
        .TextBox3 = Me.ListBox2.List(Compteur, 4)
        .TextBox4 = Me.ListBox2.List(Compteur, 5)
        .TextBox5 = Me.ListBox2.List(Compteur, 6)
        .Show
        Exit Sub
      End With
    End If
  Next
End Sub
Cordialement.
 

Valafar

XLDnaute Nouveau
Re : Remplir des texbox d'un userform à partir d'une listbox sur un autre userform

Bonsoir Papou_net et le forum,

Merci de t'être penché sur mon problème:).

Ton code résout en grande partie ma demande, il ne me manque plus que le bout de code pour afficher la photo dans mon contrôle image.
J'ai bien essayé ceci sans grand succès:
Code:
Private Sub ListBox2_DblClick(ByVal Cancel As MSForms.ReturnBoolean)
Dim Compteur As Integer
  For Compteur = 0 To (ListBox1.ListCount - 1)
    If ListBox2.Selected(Compteur) = True Then
      With UserForm2
        .TextBox1 = Me.ListBox2.List(Compteur, 0)
        .TextBox2 = Me.ListBox2.List(Compteur, 1)
        .TextBox3 = Me.ListBox2.List(Compteur, 2)
        .TextBox4 = Me.ListBox2.List(Compteur, 3)
        .TextBox5 = Me.ListBox2.List(Compteur, 4)
        .TextBox6 = Me.ListBox2.List(Compteur, 5)
        .TextBox7 = Me.ListBox2.List(Compteur, 6)
        .TextBox8 = Me.ListBox2.List(Compteur, 7)
        .Image1 = Me.ListBox2.List(Compteur, 8)   <-- ici
        .Show
        Exit Sub
      End With
    End If
  Next
End Sub


Je joint le fichier à jour.

Cordialement.
 

Pièces jointes

  • Val_listbox_vers_userform2.xlsm
    26.8 KB · Affichages: 321

Gelinotte

XLDnaute Accro
Re : Remplir des texbox d'un userform à partir d'une listbox sur un autre userform

Bonsoir,

Voici, le p'tit bout qu'il manquait :rolleyes:

Code:
Private Sub ListBox2_DblClick(ByVal Cancel As MSForms.ReturnBoolean)
 Dim Compteur As Integer
   For Compteur = 0 To (ListBox1.ListCount - 1)
     If ListBox2.Selected(Compteur) = True Then
       With UserForm2
         .TextBox1 = Me.ListBox2.List(Compteur, 0)
         .TextBox2 = Me.ListBox2.List(Compteur, 1)
         .TextBox3 = Me.ListBox2.List(Compteur, 2)
         .TextBox4 = Me.ListBox2.List(Compteur, 3)
         .TextBox5 = Me.ListBox2.List(Compteur, 4)
         .TextBox6 = Me.ListBox2.List(Compteur, 5)
         .TextBox7 = Me.ListBox2.List(Compteur, 6)
         .TextBox8 = Me.ListBox2.List(Compteur, 7)
         .Image1.Picture = LoadPicture(Me.ListBox2.List(Compteur, 8)) '   <-- ici
         .Show
         Exit Sub
       End With
     End If
   Next
 End Sub

G
 

tocnic

XLDnaute Nouveau
Re : Remplir des texbox d'un userform à partir d'une listbox sur un autre userform

Hello !

J'ai un petit souci d'adaptation de la formule sur vba, du coup je sollicite votre aide... elle me serait très précieuse !
Je vous mets mon fichier

vba.xlsm

Pour plus de précision je vous explique :
Dans le userform "rechercher" je sélectionne un champ dans la combobox activité qui me remplit une listbox avec les noms des personnes concernées (colonne A)... jusqu'ici tout va bien ! :)
Par contre quand je double clique sur un prénom de cette listbox je voudrais quand le userform qui s'ouvre Info_collab, la textbox se remplisse avec la colonne E "souhait évolution"... et c'est là que ça ne va plus, il ne remplit pas ou qu'avec la colonne A...

J'ai beau chercher je ne comprends pas pourquoi, quelqu'un a une idée ?

Merci beaucoup !
 

Discussions similaires

Réponses
3
Affichages
571

Statistiques des forums

Discussions
312 234
Messages
2 086 475
Membres
103 226
dernier inscrit
smail12