Supprimer ligne selon valeur cellule de la ligne

Bonjour à tous,

Je rencontre un problème dans la programmation de ma macro. En effet j’ai une feuille avec des données. Je souhaiterai que pour chaque ligne, la macro regarde la valeur en B2, B3, B4,……….B100 et que cette dernière supprime la totalité de la ligne si la valeur est inférieure à 5

j’ai le code suivant :
(W correspond à ma feuille)

For I = 2 To 100
If W.Range("B" & I).Value < 5 Then
W.Range("B" & I).EntireRow.Delete
I = I - 1
End If
Next I

La macro me génère le message suivant :
« La méthode delete de la classe range a échoué »

Quelqu’un a y-il une piste pour ne plus avoir d’erreur sur mon code?
merci d’avance

Ludo

Bonsoir le forum, Ludosm,

A tester peut-être ainsi.

Sub test()

 Application.ScreenUpdating = False

    iRow = Range("B" & Rows.Count).End(xlUp).Row
        For x = iRow To 2 Step -1
            If Range("B" & x).Value < 5 Then Rows(x).Delete shift:=xlUp
        Next

End Sub

Cordialement

Rechercher des sujets similaires à "supprimer ligne valeur"