Bonjour à tous,
Cliquer sur le bouton Hop! qui lance la macro Suppr3etPlus située dans le module associé à la feuille Feuil1.
Sub Suppr3etPlus()
Dim der&, t, u, i&, n&, k&
der = Cells(Rows.Count, 1).End(xlUp).Row + 1 ' N° dernière ligne coll A (+1)
t = Cells(1, 1).Resize(der, 1): Set u = Cells(1, 1).Resize(der): k = 1 ' t tableau des valeurs; u plage des valeurs
For i = 2 To der - 1 ' boucle sur les valeurs
' si la valeur apparait 2 fois ou moins, on la conserve et on l'empile dans t
If Application.CountIf(u, t(i, 1)) < 3 Then k = k + 1: t(k, 1) = t(i, 1)
Next i
For i = k + 1 To der: t(i, 1) = Empty: Next ' raz des valeurs après la dernière valeur conservée dans t
Cells(1, 1).Resize(der) = t ' affichage du résultat
End Sub
rem : on supprime les lignes concernées uniquement sur la colonne A (il n'est pas précisé si c'est toute la ligne qui doit être supprimée) - ce n'est pas la méthode la plus rapide mais comme on n'a aucune idée du volume de données ...