Re-Salut Antoine
Bon, je ne procède pas vraiment comme toi, mais je pense que tu te compliques terriblement la vie avec la boucle while pour compter les Lignes et ensuite ce Tableau Séquentiel (ce qui doit être long)
Voilà comment je procèderais :
Public Sub chargeListRh()
Dim L As Long
Dim Tableau
With Feuil3
Tableau = .Range("A2
" & .Range("A65536").End(xlUp).Row)
End With
With fbase.ListeRh
.ColumnCount = 4
.List = Tableau
End With
End Sub
Et dans le UserForm en admettant un Double-Click pour supprimer la ligne :
Private Sub ListBox1_DblClick(ByVal Cancel As MSForms.ReturnBoolean)
Dim i As Integer
i = Me.ListBox1.ListIndex
i = i + 2
Feuil3.Rows(i).EntireRow.Delete
chargeListRh
End Sub
Là où tu te perds (à mon avis, mais sans test) c'est dans ce schmiblick du tableau séquentiel :
ReDim Preserve tableau(1 To l - 2, 1 To 4) As String
For i = 1 To l - 2
En plus choisir un l minuscule comme variable y a pas mieux pour se prendre la tête car on lit un 1... il faut le faire LOL !!!
Bon Courage et bon aprèm
@+Thierry