Copier listbox à plusieurs colonnes vers feuille

simonlagaffe

XLDnaute Nouveau
Bonjour,
J'ai créé un userform (appelé "recherche") qui permet de rechercher par mot clef et par rubrique des informations. Celles-ci s'affichent dans une listbox1 composée de 10 colonnes.
Ce que je souhaiterai faire c'est à l'aide d'un bouton de commande dans cet userform, copier les résultats de la recherche dans une feuille excel, afin de pouvoir l'imprimer par la suite.
Mais je n'ai aucune idée de comment faire....
Quelqu'un serait il me venir en aide?!
Merci d'avance
 

bqtr

XLDnaute Accro
Re : Copier listbox à plusieurs colonnes vers feuille

Bonsoir et bienvenue,

Voici une façon de faire assez générique à adapter: Code associé à un bouton sur un Userform. La listbox doit avoir la propriété MultiSelect à 1
Il permet de copier les lignes sélectionnées dans la listbox.

Code:
Private Sub CommandButton1_Click()

Dim k As Long, i As Long, x As Byte

i = 1
'De la première ligne de la listbox à la dernière
For k = 0 To ListBox1.ListCount - 1
   'Si une ligne est sélectionnée
   If ListBox1.Selected(k) Then
      'Avec la feuille où tu souhaites placer les données
      With Sheets("nomdetafeuille")
         'De la première colonne à la dernière colonne de la listbox
         For x = 0 To 9
            'Copie des données de la cellule A1 à J1 pour la première ligne sélectionnée dans la listbox
            .Cells(i, x + 1) = ListBox1.List(k, x)
         Next
          'Incrémente la variable I de +1 pour passer à la ligne suivante (A2:J2) dans la feuille si tu as
          'plusieurs ligne de la listbox à tranférer
           i = i + 1
      End With
   End If
Next
'Impression de la feuille
Sheets("nomdetafeuille").PrintOut

End Sub

Si tu souhaites copier toute la listbox en une seule fois supprime :
If ListBox1.Selected(k) Then et le End If
A+
 

Discussions similaires

Réponses
18
Affichages
830

Statistiques des forums

Discussions
312 729
Messages
2 091 414
Membres
104 926
dernier inscrit
yaniro