Private Sub UserForm_Initialize()
Dim t, n&, i&, j&, p&
With Sheets("Feuil1")
If .FilterMode Then .ShowAllData
t = .Range("d11:L" & .Cells(.Rows.Count, "d").End(xlUp).Row)
For i = 1 To UBound(t): n = n - (t(i, UBound(t, 2)) <> 0): Next
If n > 0 Then ReDim r(1 To n, 1 To 9) Else Exit Sub
For i = 1 To UBound(t)
If t(i, UBound(t, 2)) <> 0 Then p = p + 1: For j = 1 To UBound(t, 2): r(p, j) = t(i, j): Next
Next i
ListBox1.List = r: ListBox1.TextAlign = fmTextAlignRight
End With
End Sub