Re, Salut Numéro 2, Salut xorsankukai ,
Désolé, comme l'a fait remarquer Numéro 2, la macro bloquait à cause des MFC. Mais de toute manière, il est risqué et plus compliqué de coder sur des couleurs.
Voici un essai, inspiré de la première macro de xorsankukai, avec un code qui conserve :
- pour la feuille 1 : les lignes contenant des 1 ;
- pour la feuille 2 : les lignes contenant des 2 et ne contenant pas de 1.
Sub LancerSupp()
dim tcritok, tcritnok 'edit xorsankukai :)
tcritok = array("1", "2")
tcritnok = array("|~|", "1")
for i = 1 to 2
Supprime sheets(i), tcritok(i - 1), tcritnok(i - 1)
next i
end sub
Sub Supprime(Feuille as worksheet, critok, critnok)
With Feuille
dl = application.max(.cells(.rows.count, 2).end(xlup).row, 3)
with .Range("A3:B" & dl)
t = .value
For i = lbound(t) To uBound(t)
If t(i, 2) Like "*" & critok & "*" and not t(i, 2) like "*" & critnok & "*" Then
n = n + 1
For k = lbound(t, 2) to ubound(t, 2)
t(n, k) = t(i, k)
Next k
End If
Next i
.ClearContents
if n > 0 then .Resize(n, ubound(t, 2)) = t
end with
End With
End Sub
Cdlt,