Bonjour Dan,
après de très nombreux essais, j'ai enfin trouvé la solution en plaçant la relation entre la feuille et le LisBox :
Me.ListBox1.List = .Range("A1:D" & .[A65000].End(xlUp).Row).Value, non pas dans l'initialisation de l'Userform, mais à la fin de chaque requête de ComboBox. Dans ce cas, l'affichage dans le ListBox se fait normalement et la suppression des lignes sélectionnées aussi.
Une question cependant : quel avantage a-t-on à utiliser
Range("A1:D" & .[A65000].End(xlUp).Row).Value, plutôt que Range("A1:D1000".Value ?
Est-ce une question d'utilisation de la mémoire ? et si oui, ai-je intérêt à modifier aussi :
If CbRapport1.Value = "Nom" Then
.Range("A1:A100").Value = Sheets("BASE").Range("A2:A100").Value en .Range("A1:A" & .[A65000].End(xlUp).Row).Value ?
Merci d'avoir pris le temps de me répondre et merci pour vos conseils.
Cordialement