Private Sub CommandButton1_Click()
Dim Cellule As Range
Dim Nomfeuille1 As String
Dim plg2 As Range
Dim Col As String
Dim nb As Byte
Dim dl1 As Long
Dim i As Long
'parametre
Col = "A"
With Sheets("BD2")
Set plg2 = .Range("a1:a" & .Range("A" & Rows.Count).End(xlUp).Row)
For Each Cellule In Sheets(ActiveSheet.Name).Range(Col & "2:" & Col & Sheets(ActiveSheet.Name).Range(Col & Sheets(ActiveSheet.Name).Rows.Count).End(xlUp).Row)
If WorksheetFunction.CountIf(plg2, Cellule) = 0 Then
dl1 = .Range("A" & Rows.Count).End(xlUp).Row + 1
Sheets(ActiveSheet.Name).Rows(Cellule.Row).Copy Destination:=.Range("a" & dl1)
End If
Next Cellule
End With
With Sheets(ActiveSheet.Name)
Set plg2 = .Range("a1:a" & .Range("A" & Rows.Count).End(xlUp).Row)
For i = Sheets("BD2").Range(Col & Sheets("BD2").Rows.Count).End(xlUp).Row To 2 Step -1
If WorksheetFunction.CountIf(plg2, Sheets("BD2").Range("a" & i)) = 0 Then
Sheets("BD2").Rows(i).Delete Shift:=xlUp
End If
Next i
End With
End Sub