1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19
| Sub Sup()
Dim Tbl, DerCel As Range, x As Long, Result(), i As Long, y As Long
With Sheets("Feuil1") 'à remplacer par le nom de ta feuille
Set DerCel = .Range("D" & .Rows.Count).End(xlUp)
ReDim Result(1 To DerCel.Row + 1, 1 To 4) '4 si 1ere colonne est en A, derniere colonne est D, 5 si E, 6 si F....
Tbl = .Range("A2", DerCel) 'imaginons que ton tableau commence en A et termine en D, sinon .Range("A2", DerCel(1,5)) pour E etc.
i = 1
For x = 1 To UBound(Tbl, 1)
If Val(Tbl(x, 4)) <> 0 Then
For y = 1 To UBound(Tbl, 2)
Result(i, y) = Tbl(x, y)
Next y
i = i + 1
End If
Next x
.Range("A2", DerCel).ClearContents
.Range("A2").Resize(UBound(Result, 1), UBound(Result, 2)) = Result
End With
End Sub |
Partager