Retranscrire les sélections d'un Listbox

Bonsoir,

Dans un UserForm, il y'a une listbox avec la propriété "SelectMulti". J'aimerai écrire à la suite, dans une feuille, toutes les valeurs sélectionnées.

Pour cela, j'ai trouvé ce code que j'ai adapté à mon cas de figure :

    Dim Texte As String
    Dim I As Integer

    With Me.ListBox3

        For I = 0 To .ListCount - 1
            If .Selected(I) = True Then
                Texte = Texte & .List(I) & vbCrLf
            End If
        Next I
    End With

    Texte = Left(Texte, Len(Texte) - 1)

    lig = Cells(Rows.Count, "J").End(xlUp).Row + 2
    Cells(lig, "J") = Texte

Le seul problème c'est qu'il écrit toutes les valeurs sélectionnées dans la même cellule au lieu de les écrire à la suite (J1, J2, J3, ...)

Il me semble que c'est parce qu'il "compresse" toutes les valeurs dans la variable "Texte" et retranscrit cette variable dans la cellule ... Je dirais donc qu'il faut enlever cette étape mais je ne sais pas comment faire :/

Merci d'avance ;)

Eh bien j'ai finalement trouvé la solution

pour ceux que ça intéresse :

    Dim I As Integer

    With Me.ListBox3
        For I = 0 To .ListCount - 1
            If .Selected(I) = True Then
                lig = Cells(Rows.Count, "J").End(xlUp).Row + 1
                Cells(lig, "J") = .List(I)
            End If
        Next I
    End With

A +

Bonjour,

j'arrive trop tard... Mais il y a déjà quelque temps j'avais posté cette "astuce".

@ bientôt

LouReeD

Re,

Merci tout de même pour votre réponse 😉

A + ;)

Rechercher des sujets similaires à "retranscrire selections listbox"