Bonjour,
Il se trouve que ton fichier ne correspond pas à ta demande ! Il t'appartient d'adapter en fonction de ce que tu veux...
Voici une version adaptée pour obtenir le résultat indiqué sur ton fichier-test :
Sub EffacerContenu()
Dim mcl, i&, k%
With Worksheets("Feuil2")
mcl = Array("", "*" & .Range("I1") & "*", "*" & .Range("H1") & "*")
n = .Range("H" & .Rows.Count).End(xlUp).Row - 1
Application.ScreenUpdating = False
With .Range("H2").Resize(n, 2)
For i = 1 To .Rows.Count
For k = 1 To 2
If .Cells(i, k) Like mcl(k) Then .Cells(i, k).ClearContents
Next k
Next i
End With
End With
End Sub
Tu trouveras peut-être que c'est quelque peu différent de la première version... Le principe est le même, on a juste fait varier quelques choix de variables pour traiter plus commodément deux colonnes...
La version précédente correspondait plus rigoureusement à ta demande... C'était à toi de veiller que ton fichier soit une rigoureuse illustration de la demande formulée, ou bien que la formulation de la demande corresponde au fichier fourni.
Cordialement.