Bonjour,
Vous avez omis de mettre I10 comme étant une plage ("Range"), VBA considère donc que c'est le nom d'une variable.
Utiliser une structure With Truc...End With
, c'est bien, mais d'une part c'est peu utile sur la feuille active car en l'absence de précision, c'est la feuille qui est implicitement utilisée par VBA. D'autre part, pour que ça ait un intérêt, il faut que les objets qui s'y rapportent commencent par un point : .Range("A1")
au lieu de Range("A1")
.
Voilà ce que je propose :
Sub EFFA()
With Sheets("NomDeLaFeuille")
If .Range("I10") = "-FIL-VERT" Then .Range("H10").ClearContents
End With
End Sub
Edit : Salut Xmenpl !