Une façon plus simple mais avec un seule suppression à la fois.
Sub SuppErg(TB(), ERG As Integer)
Dim i As Integer
For i = ERG To UBound(TB) - 1
TB(i) = TB(i + 1)
Next i
ReDim Preserve TB(i - 1)
End Sub
Tu passe ton tableau en argument et le N° de l'ERG que tu veux supprimer.
Attention, si tu veux supprimer par exemple le 4 et le 13 tu dois d'abords supprimer le 13 et ensuite le 4, si tu fais l'inverse, le 13 n'est plus à la même place.
Une sub pour démontrer..
'Pour tester SuppErg
Sub Test()
Dim i As Integer, S As String
'Pour le test
Dim TB()
ReDim TB(20)
For i = 0 To 20: TB(i) = i + 20: Next i
SuppErg TB(), 13
For i = 1 To UBound(TB)
S = S & TB(i) & " , "
Next i
MsgBox S
End Sub
A+