Bonjour Damsa, bonjour le forum,
Dans l'initialisation de l'UserForm tu as modifié le nom de la variable DL en DLO. Tu as adapté pour définir cette variable, mais tu as oublié de remplacer :
Me.ListBox1.List = O.Range("A2:A" & DL).Value 'alimente la ListBox1
par :
Me.ListBox1.List = O.Range("A2:A" & DLO).Value 'alimente la ListBox1
Quand tu modifies le nom d'une variable je te conseille d'utiliser la fonction Remplacer ([CTRL]+[H]) avec les options Mot entier et Respecter la casse...