Bonsoir merci de vos réponses et h2so4 pour ton code
Mais en effet dhany le dit, c’est qu’il manque la condition que l’ID est en double et c’est la tout mon problème...
je pense avoir posé une question, j'ai proposé une solution pour le cas où la réponse est oui. Je n'ai pas vu de réponse à ma question.
s'il peut y avoir des IDs uniques avec une valeur 1 voici le code adapté, le code supprime toutes les lignes qui ont 1 en colonne M pour les IDs qui sont en double, mais ne supprime pas les IDs uniques qui auraient une valeur 1 en colonne M.
Sub aargh()
With Sheets("feuil1") 'nom de la feuille
dl = .Cells(Rows.Count, 2).End(xlUp).Row 'nombre de lignes
For i = dl To 1 Step -1
If .Cells(i, "M") = 1 Then
Set re = .Cells(1, 2).Resize(dl).Find(.Cells(i, 2).Value, lookat:=xlWhole)
If Not re Is Nothing Then
If .Cells(re.Row, "M") = 0 Then
Rows(i).Delete shift:=xlUp '1 en colonne M on supprime la ligne
Else
Set re = .Cells(1, 2).Resize(dl).FindNext(re)
If Not re Is Nothing Then
If .Cells(re.Row, "M") = 0 Then
Rows(i).Delete shift:=xlUp '1 en colonne M on supprime la ligne
End If
End If
End If
End If
End If
Next i
End With
End Sub