Sub Macro1()
Dim OS As Worksheet 'déclare la variable OS (Onglet Source)
Dim OD As Worksheet 'déclare la variable OD (Onglet Destination)
Dim PL As Range 'déclare la variable PL (PLage)
Dim TV As Variant 'déclare la variable TV (Tableau des Valeurs)
Dim I As Integer 'déclare la variable I (Incrément)
Dim DEST As Range 'déclare la variable DEST (cellule de DESTination)
Set OS = Worksheets("Sheet1") 'définit l'onglet source OS
Set OD = Worksheets("non conforme") 'définit l'onglet destination OD
Set PL = OS.Range("A3").CurrentRegion 'déinit la plage PL
Set PL = PL.Resize(PL.Rows.Count, PL.Columns.Count + 2) 'redéfinit la plage PL a cause de la colonne G vide (mauvaise idée)
TV = PL 'définit le tableau des valeurs TV
For I = 1 To UBound(TV, 1) 'boucle sur toutes les lignes I du tableau des valeurs TV
If TV(I, 8) = "non conforme" Then 'condition : si la donnée ligne I colonne 8 de TV vaut "non conforme"
'définit la cellule de destination DEST
Set DEST = OD.Cells(Application.Rows.Count, "A").End(xlUp).Offset(1, 0)
OS.Cells(I + 2, 1).Resize(11, 8).Copy DEST 'copy et colle la ligne trouvée + 10 dans DEST
End If 'fin de la condition
Next I 'prochaine de la boucle
End Sub