[VB] supprimer une ligne

Bonjour,

j'ai fais ce petit bout de programme

Dim i
i = 4
 Do
    If (Cells(i, 3) = 0) Then
    Rows("i:i").Select
    Selection.Delete Shift:=xlUp
    End If
    i = i + 1
Loop While (IsEmpty(Cells(i, 3)))

et lorsque j'execute la macro il me dit

erreur d'execution 1004

erreur définie par l'application ou par l'objet

l'erreur vient de cette ligne

   Rows("i:i").Select

le problème est que je ne sait pas comment écrire les i dans ma ligne de code pour que le programme supprime la ligne ou il est actuellement si la case C'i'=0.

si quelqu'un pouvait me dire comment faire?

par avance merci

Bonjour,

sont-ce des cellules vides, ou égales à 0 (zéro )

nota, pour une suppression de lignes, il faut partir du bas de la base (de la dernière ligne), vers le haut.

En supposant que la dernière ligne est dans la colonne A

deux codes, le premier si la valeur à 0, le deuxième, plus rapide, si cellules vides :

Sub supp()
For i = [A65000].End(xlUp).Row To 1 Step -1
    If Cells(i, 3) = 0 Then Cells(i, 3).EntireRow.Delete
Next i
End Sub

Sub supp2()
Range("C1:C" & [A65000].End(xlUp).Row).SpecialCells(xlCellTypeBlanks).EntireRow.Delete
End Sub
Rechercher des sujets similaires à "supprimer ligne"