Liste choix multiple

Bonjour à tous,

Je dois faire un fichier excel pour le boulot avec des choix multiples et je n'y arrive pas. J'ai essayé de fouiller un peu sur le net, j'ai vu qu'on pouvait le faire avec visual basic, mais je ne comprends pas du tout visual basic donc je suis totalement perdue.

je vous explique ce que je dois faire :

J'ai un fichier excel avec plusieurs feuilles. Sur une des feuilles j'ai un tableau à remplir et sur les autres feuilles, j'ai des listes, par exemple de maçons, d'architectes...

Sur mon tableau, j'ai une colonne "Soumissionnaire maçon" par exemple .. et dans les cellules de cette colonne, j'aimerai en fait choisir les maçons qui doivent rendre la soumission à partir de la liste que j'ai fait sur une autre feuille. J'aimerai pouvoir en sélectionner plusieurs et non "1".

Vous suivez ?

Je ne sais pas si j'ai été claire. Je vous aurai bien envoyé mon fichier mais il y a pleins de noms... donc un peu difficile.

Merci d'avance pour vos réponses.

Bonne soirée.

Bonjour,

Comme ceci en pièce jointe?

492classeur1.xlsx (9.16 Ko)
Abrahel a écrit :

Bonjour,

Comme ceci en pièce jointe?

Bonsoir,

Merci beaucoup pour votre réponse.

Non des listes j'arrive à faire, mais ce que j'aimerai en fait, c'est qu'en double-cliquant sur la cellule, j'ai un choix de plusieurs maçons de ma liste et que je sélectionne ceux concernés.

Est-ce un peu plus clair ?

Désolée je me suis peut-être mal exprimée.

Voilà 2 exemples.

J'aimerai pouvoir sélectionner plusieurs choix de ma liste.

Mais je n'arrive pas même en copiant les codes de visual basic.

Après avoir des heures là-dessus, j'ai réussi avec une cellule qui est la I2. Quand je double-clique j'ai ma liste et je peux sélectionner plusieurs choses.

Maintenant , j 'aimerai pouvoir répéter mon code sur toute ma colonne

Et là ma liste est sur la colonne 19, mais j'aimerai la mettre sur une autre feuille mais je ne sais pas après ce qu'il faut modifier.

Et un autre petit détail, entre chaque choix que j'ai sélectionner il me met un "&" dans la cellule, j'aimerai qu'il revienne chaque fois à la ligne si possible ? que ça soit plus lisible.

un grand merci d'avance pour votre aide

Voici le code de mon userform :

Option Explicit

Private Sub CommandButton1_Click()
Dim i As Byte
Dim ValeurARetourner As String

    For i = 0 To ListBox1.ListCount - 1
        If ListBox1.Selected(i) = True Then
            ValeurARetourner = ValeurARetourner & ListBox1.List(i) & " & "
        End If
    Next i
With Sheets("Feuil1")
.Range("I2") = Left(ValeurARetourner, Len(ValeurARetourner) - 3)
.Range("I3").Activate
End With
UserForm1.Hide
Unload UserForm1
End Sub

Private Sub ListBox1_Click()

End Sub

Private Sub UserForm_Initialize()
Dim i As Integer, Derlig As Integer
ListBox1.Clear

Derlig = Sheets("Feuil1").Cells(65536, 19).End(xlUp).Row
    For i = 1 To Derlig
        ListBox1.AddItem Cells(i, 19).Value
    Next i
    For i = 0 To ListBox1.ListCount - 1
        If ListBox1.Selected(i) = True Then
            ListBox1.Selected(i) = False
        End If
    Next i
End Sub

Bonjour

Ne pourrais tu pas fournir un fichier dans lequel tu indiques ce que tu as et ce que tu veux obtenir

Car dans le premier fichier ( Copie de Tableau Cursus.xlsm ) tu obtiens les différents choix dans la cellule cliquée

Mais apparemment ce n'est pas cela que tu recherches

Ps: Pour que le résultat soit sur plusieurs lignes dans la cellule remplaces "," par VbLf (toujours dans le 1er fichier)

Les fichiers que j'ai mis sont des exemples.

Voici mon fichier.

Dans la colonne I quand je double clique sur la cellule "I2" j'ai ma liste .. je fais mon choix... c'est ok.

Par contre, j'ai mis un code pour les retours à la ligne, j'ai mis "& vbNewLine & vbNewLine" car si je mets que "& vbNewLine" il me manque chaque fois une lettre à ma liste ce que je ne comprends pas.

Ce que j'aimerai faire maintenant, c'est répéter mon code vba de la cellule "I2" sur toute ma colonne.

Autre chose que je veux faire, là ma liste vient de la colonne "S" mais j'aimerai qu'elle soit prise depuis la feuille nommée "Macon".

Et après ça, je dois encore faire le même procéder pour les peintres...

Désolée pour mes explications mais je viens de débuter en vba, j'y comprends déjà pas grand chose... c'est pas évident.

170test1.xlsm (39.53 Ko)

Et pendant que j'y suis, je ne comprends pas cette ligne :

With Sheets("Feuil1")

.Range("I2") = Left(ValeurARetourner, Len(ValeurARetourner) - 3)

.Range("I3").Activate

End With

Est-ce que cette ligne est obligatoire ".Range("I3").Activate" ? Car je ne vois pas le rapport entre ma cellule I2 et la I3.

Bonjour

Quelques commentaires dans le code

Banzai64 a écrit :

Bonjour

Quelques commentaires dans le code

Un grand merci Banzai64 c'est exactement cela.

Et une dernière chose, au lieu de prendre ma liste sur la colonne S est-ce que je peux la prendre sur une autre feuille ? Que dois-je changer ?


C'est tout bon, j'ai modifié comme tu avais noté dans mon fichier.. J'ai été un peu vite oups.

encore merci pour ton aide qui m'a été très précieuse.

Maintenant je vais répéter tout ça sur mes autres colonnes avec des données différentes.

Rechercher des sujets similaires à "liste choix multiple"