Suppression de lignes sous conditions

Bonjour à tous

Mon problème peut paraitre simple et pourtant je suis bloquée.

J'ai une base de données avec environ 1500 lignes et je souhaite supprimer entièrement les lignes où il y a écrit "E0004" dans la colonne D.

J'ai cherché sur ce forum, bidouillée un peu de partout ma macro pour qu'elle fonctionne, mais aucun résultat. J'ai l'impression que rien ne réagit.

Je souhaite donc avoir votre avis sur ma macro pour la faire fonctionner

Merci

Voici mon code :

Sub SupprCES()

For i = 1 To i = 64000 Step 1
    If Cells(i, 4).Text = "E0004" Then
    Rows(i).Delete
    End If
Next i

End Sub

PS: Je souhaite automatiser un tableau donc macro obligée (pas de filtre auto)

Bonjour

Rows(i).EntireRow.Delete

Cordialement

Bonjour,

Merci de votre réponse rapide malheureusement elle ne veut toujours rien entendre :/

Cordialement

Elsa79, Amadéus, le forum,

Une suggestion ...

Sub SupprCES()
Dim i As Long
Dim DerLig As Long

With ActiveSheet
   DerLig = .Range("D" & Rows.Count).End(xlUp).Row
   For i = DerLig To 1 Step -1
      If .Cells(i, 4).Text = "E0004" Then Rows(i).EntireRow.Delete
   Next i
End With
End Sub

LaCéline

Bonjour LaCéline,

Une suggestion qui fonctionne parfaitement !!! Grand merci !

Pourrais-tu m'expliquer le contenu de DerLig, dernière ligne ?

Je suis débutante dans le VBA mais j'aimerais me perfectionner, d'où ma question

Encore merci

Elsa79, Amadéus, le forum,

derligne > sur la colonne pertinente (ici D), on part du bas la feuille (Rows.Count > compte le nombre de lignes de la feuille) et remonte ( .end(xlup)) jusqu'à la première ligne dont le contenu est différent. i.e. si la dernière ligne contient des données, cela s'arrête sur la première ligne vide rencontrée. Si la dernière ligne est vide, cela s'arrête sur la première ligne contenant des données. Puis, ".row" dit ce que l'on veut comme information, dans ce cas : le numéro de cette ligne.

LaCéline

Rechercher des sujets similaires à "suppression lignes conditions"