Sub Macro1()
Dim dlt As Long 'déclare la variable dlt (Dernière Ligne de l'Onglet Tous)
Dim dlv As Long 'déclare la variable dlv (Dernière Ligne de l'Onglet Ventes)
Dim plv As Range 'déclare la variable plv (PLage de l'Onglet Ventes)
Dim i As Long 'déclare la variable i (Incrément)
Application.ScreenUpdating = False 'masque les changements à l'écran
With Sheets("VENTES") 'prend en compte l'onglet "VENTES"
dlv = .Cells(Application.Rows.Count, 1).End(xlUp).Row 'définit la dernière ligne éditée dlv de la colonne 1 (=A) de l'onglet
Set plv = .Range("A2:A" & dlv) 'définit la plage plv de l'onglet
End With 'fin de la prise en compte de l'onglet "VENTES"
With Sheets("TOUS") 'prend en compte l'onglet "TOUS"
dlt = .Cells(Application.Rows.Count, 1).End(xlUp).Row 'définit la dernière ligne éditée dlt de la colonne 1 (=A) de l'onglet
For i = dlt To 2 Step -1 'boucle inversée sur toutes les lignes de dlt à 2
'si il n'existe aucune occurrence de la cellule de la boucle (ligne i, colonne 1) dans la plage plv, la ligne i est supprimée
If plv.Find(.Cells(i, 1).Value, , xlValues, xlWhole) Is Nothing Then .Rows(i).Delete
Next i 'prochaine cellule de la boucle
End With 'fin de la prise en compte de l'onglet "TOUS"
Application.ScreenUpdating = True 'affiche les changements à l'écran
MsgBox "Les données inutiles ont été supprimées !" 'message
End Sub