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

Copier une Listbox userform dans une feuille du classeur

zephir94

XLDnaute Impliqué
Bonsoir à tous,

Je voudrais copier ma listebox qui est dans un Userform dans une feuille du même classeur.
Je voudrai qu'elle commence à C9

Je crée ma liste box comme ceci :

Code:
Private Sub UserForm_Activate()
    Dim i As Byte
Dim toto As Integer

u = Feuil1.Range("N65536").End(xlUp).Row
    For i = 9 To u
If Feuil1.Range("P" & i).Interior.ColorIndex = 3 Then

        
UserForm12.ListBox1.ColumnWidths = "40;100;250;40"
ListBox1.AddItem ' il nous faut bien créer l'article, avant de remplir ses colonnes
         toto = ListBox1.ListCount - 1
        ListBox1.List(toto, 0) = Feuil1.Range("C" & i).Value
        ListBox1.List(toto, 1) = Feuil1.Range("D" & i).Value
        ListBox1.List(toto, 2) = Feuil1.Range("E" & i).Value
        ListBox1.List(toto, 3) = Feuil1.Range("N" & i).Value
    
    End If
    Next
  
  'UserForm12.Select

End Sub

Je pensais que ce serait facile ! bref lol

Code:
With ListBox1
Sheets("feuil4").Range("C9") = .List
end with

Ok je sorts !

Alors chemin fessant j'ai essayé :

Code:
'With ListBox1
'        Sheets(4).Range(Cells(3, 9), Cells(.ListCount, 3)) = .List
'    End With

j'ai les deux premières lignes en C1,C2 !!!

Merci par avance pour vos aides
 

zephir94

XLDnaute Impliqué
Re : Copier une Listbox userform dans une feuille du classeur

Toc toc toc j'ai trouvé

Une petite boucle pour trouver le nombre de ligne et colonnes et pour écrire dans la feuille

Code:
With Me.ListBox1
    X = Split(.ColumnWidths, ";")
    For Lig = 0 To .ListCount - 1
        J = 0
        For Col = 0 To UBound(X)
            If CDbl(Left(X(Col), Len(X(Col)) - 3)) > 0 Then
                Cells(Lig + 9, J + 3) = .List(Lig, Col)
                J = J + 1
            End If
        Next Col
    Next Lig
End With

Dans le cas ou quelqu'un cherche comment faire !

Merci à vous tous
 

zephir94

XLDnaute Impliqué
Re : Copier une Listbox userform dans une feuille du classeur

Bonsoir mapomme,
Je viens d'essayer par curiosité le code, mais hélas l'indice n'appartient pas à la sélection.
Je tournais en rond depuis cette après-midi mais à force de tourner en rond on fini toujours par revenir d'ou l'on vient !
Merci en tout cas.
 

job75

XLDnaute Barbatruc
Re : Copier une Listbox userform dans une feuille du classeur

Bonsoir zephir94, mapomme,

Je pensais que ce serait facile !

Ben oui :

Code:
With ListBox1
  Sheets("Feuil4").[C9].Resize(UBound(.List) + 1, 4) = .List
End With
Edit : le code de mapomme fait la même chose et ça marche très bien

Encore faut-il que la feuille nommée "Feuil4" existe...

Bonne fin de soirée.
 
Dernière édition:

Discussions similaires

Réponses
4
Affichages
382
Réponses
17
Affichages
1 K
Les cookies sont requis pour utiliser ce site. Vous devez les accepter pour continuer à utiliser le site. En savoir plus…