Créer groupe avec liste dans userform VBA
Bonjour,
Un nouveau projet d'outil d'organisation !
Dans le fichier joints j'ai créé une liste automatique en cascade dans la même cellule, oui oui c'est possible merci à tulipe4
Donc dans chaque cellule j'ai ma liste et je choisi le groupe puis le nom de la personne, puis une MFC me donne les doublons.
Ce que souhaiterai c'est via un userform que j'ai adapté d'une proposition de Nad, merci à elle
J'ai une combo qui me donne le groupe1, selon le groupe1 dans la listbox les membres du groupe sont visibles. Je choisis qui participe ou pas à l'activité.
Le premier hic, les noms choisis sont renseignés dans le même cellule, j'aimerai qu'ils sont renseignés les uns en dessous des autres (dans des cellules différentes)
Le second hic, il serait souhaitable que l'on vérifie que le nom n'est pas déjà dans une autre activité, si tel est le cas alors une msgbox qui renseigne du doublon, soit on valide et on passe au prochain soit ou valide pas et on enlève ce nom et on passe au prochain. Il peut y avoir des doublons, c'est pas forcément un problème, mais c'est mieux que cela soit su.
Merci à ceux qui pourront m'aider.
Cordialement,
Leakim
Bonsoir,
J'avance sur mon projet et j'y suis presque J'ai résolu mon souci de contenu de listbox selon combox. Ca c'est OK.
J'ai réussit à faire que les valeurs de mes choix se renseignent les un en dessous des autres. Reste les valeurs se renseignent avec des cellules vides.
Je pense que comme je passe par la valeur de listbox si je choisis une valeur en milieu de listbox cela me la colle quatre ou cinq cellule plus basse. J'aimerai faire avec une suite sans cellule vide...
Je vois mon nouveau fichier.
Cordialement,
Leakim
Re,
Je me sens un peu seul sur ce coup là
J'ai quasiment fini. Il ne me reste plus que mon message de doublon. J'ai tenté avec countif en VBA mais je ne parviens pas à récupérer la valeur de ma liste???
Private Sub CommandButton1_Click()
Dim I As Integer
If CheckBox1 = True Then
For I = 0 To ListBox1.ListCount - 1
ActiveCell.Offset(I, 0) = ListBox1.List(I)
Next I
End If
For I = 0 To ListBox1.ListCount - 1
If ListBox1.Selected(I) = True Then ListBox2.AddItem ListBox1.List(I)
Next I
For I = 0 To ListBox2.ListCount - 1
If ListBox2.Selected(I - counter) Then
ListBox2.RemoveItem (I - counter)
counter = counter + 1
End If
Next I
For I = 0 To ListBox2.ListCount - 1
ActiveCell.Offset(I, 0) = ListBox2.List(I)
If Worksheets.Application.CountIf(Range("$C$9:$L$27"), ActiveCell) > 0 Then
MsgBox "attention doublon"
End If
Next I
Unload UserForm1
'ActiveCell.Offset(0, 1).Select
End Sub
Bien cordialement,
Leakim