Option Explicit
Sub CpyData()
If ActiveSheet.Name <> "Feuil1" Then Exit Sub
Dim sh1 As Worksheet, sh2 As Worksheet, plg As Range
Dim nlm&, n&, i&, j&, k&
Set sh1 = Worksheets("Feuil2"): Set sh2 = Worksheets("Feuil3")
nlm = Rows.Count: Application.ScreenUpdating = 0
n = sh1.Cells(nlm, 2).End(3).Row: If n > 3 Then sh1.Range("B4:E" & n).ClearContents
n = sh2.Cells(nlm, 2).End(3).Row: If n > 3 Then sh2.Range("B4:E" & n).ClearContents
n = Cells(nlm, 2).End(3).Row: j = 4: k = 4
For i = 4 To n
With Cells(i, 2)
Set plg = .Resize(, 4)
If .Offset(, 4) = "OUI" Then plg.Copy sh1.Cells(j, 2): j = j + 1
If .Offset(, 5) = "OUI" Then plg.Copy sh2.Cells(k, 2): k = k + 1
End With
Next i
sh1.Select
End Sub