Sub action()
Dim i As Long, dl As Long, lig As Long
dl = Range("E" & Rows.Count).End(xlUp).Row
lig = dl + 1
For i = 3 To dl
If Range("C" & i).Value = "libre" And Range("D" & i) = "" Then
Range(Cells(i, "A"), Cells(i, "D")).Copy Destination:=Range("A" & lig)
Range(Cells(i, "A"), Cells(i, "D")).ClearContents
lig = lig + 1
End If
Next
End Sub