Bonsoir
De ce que je comprends sur ton fichier, je ne vois pas l'intérêt d'un multi choix.
Quoi qu'il en soit, comme la différence entre TACHE EXECUTEE et TACHE A FAIRE n'est que d'une ligne, j'ai nommé Liste2
='Base de données'!$B$3:$B$10
A remplacer dans le Module1 :
Private Sub UserForm_Initialize()
If ActiveCell.Column = 4 Then
ListBox1.List() = Range("Liste").Value 'Nom défini = Liste
Else
ListBox1.List() = Range("Liste2").Value
End If
End Sub
Et dans la feuille :
Private Sub Worksheet_SelectionChange(ByVal Target As Range)
If Not Intersect(Target, Range("D3:F5000")) Is Nothing Then
UserForm1.Show
End If
End Sub
Amicalement
Nad