Bonjour à tous,
Je suis actuellement en train de développer une petite macro permettant, dans un userform, de faire une recherche par nom et d'afficher les résultats de la recherche dans une listbox.
Cette fonction se fait via le CommandButton1 et fonctionne parfaitement.
J'aimerais maintenant que, une fois les infos présentées dans la listbox, je puisse sélectionner la ligne que je veux et que celles ci soient copiés dans ma feuille excel et là, gros blanc...
Voici le code pour la recherche des infos et présentation dans Listbox.
et le code pour la fonction copier dans la cellule sélectionnée mais la méthode n'est pas prise en charge.
Si quelqu'un pouvait me filer un coup de pouce... Je craque là ^^
Merci à tous.
Olivier
Je suis actuellement en train de développer une petite macro permettant, dans un userform, de faire une recherche par nom et d'afficher les résultats de la recherche dans une listbox.
Cette fonction se fait via le CommandButton1 et fonctionne parfaitement.
J'aimerais maintenant que, une fois les infos présentées dans la listbox, je puisse sélectionner la ligne que je veux et que celles ci soient copiés dans ma feuille excel et là, gros blanc...
Voici le code pour la recherche des infos et présentation dans Listbox.
HTML:
Private Sub CommandButton1_Click()
' Recherche
Dim Cel2 As Range
Dim Colonne As Integer, Indice As Integer
Dim Ligne As Long
Dim WsSource As Worksheet, WsCible As Worksheet
'Récupération des informations
Workbooks("SOURCE").Activate
Set WsSource = ActiveSheet
If Me.TextBox2 = "" Then
MsgBox "Veuillez indiquer le nom à rechercher !"
Exit Sub
End If
With WsSource
Set Cel2 = .Columns(3).Find(what:=Me.TextBox2, LookIn:=xlValues, lookat:=xlWhole)
If Not Cel2 Is Nothing Then
Colonne = Cel2.Column
Else
MsgBox "Le collaborateur " & TextBox1 & " - " & TextBox2 & " n'a pas été trouvé dans la liste."
Exit Sub
End If
For Ligne = 1 To 20000
If .Cells(Ligne, Colonne) = Me.TextBox2 Then
Me.ListBox1.AddItem .Range("C" & Ligne)
Me.ListBox1.List(Indice, 1) = .Range("D" & Ligne)
Indice = Indice + 1
End If
Next Ligne
End With
End Sub
et le code pour la fonction copier dans la cellule sélectionnée mais la méthode n'est pas prise en charge.
HTML:
Private Sub CommandButton2_Click()
Dim i As Integer
For i = 0 To Me.ListBox1.ListCount - 1
If Me.ListBox1.Selected(i) = True Then
Selection.Offset(0, 2) = ListBox1.List(i, 1)
'<l'item a été sélectionné>
End If
Next
Unload Me
End Sub
Si quelqu'un pouvait me filer un coup de pouce... Je craque là ^^
Merci à tous.
Olivier