Supprimer les cellules vides 'Erreur 1004' et boucle infinie ?

Bonjour à tous,

Je rencontre un problème d'erreur d’exécution '1004' en voulant faire une macro qui supprime les cellules vides. Lorsque je clique sur Débogage, on m'indique qu'il y a une erreur au niveau du If. Pourtant la macro s'exécute et marche.
J'ai également fait une autre macro Sub suppr2 mais qui fait crashé mon excel, pouvez-vous m'aider svp ?

Merci par avance pour votre aide

Sub suppr()

Dim l As Integer

l = 1

For l = 26 To l = 1 Step -1

        If Cells(l, 1).Value = "" Then
            Cells(l, 1).Delete xlUp

        End If
Next l

End SubSub suppr2()

Dim ligne As Integer

ligne = 1
der_ligne = Cells.SpecialCells(xlCellTypeLastCell).Row

While ligne < der_ligne

    If (Cells(ligne, 1).Value = "" And Cells(ligne, 1).Borders(xlEdgeRight).lignestyle = xlContinuous) Then

    Cells(ligne, 1).Delete

    ligne = ligne - 1

    End If

Wend

ligne = ligne + 1

End Sub

Bonjour

Votre premier code comme ceci

Sub suppr()
Dim l As Integer

For l = 26 To 1 Step -1
        If Cells(l, 1).Value = "" Then Cells(l, 1).Delete xlUp
Next l
End Sub

Attention que cela ne supprime pas la ligne entière mais uniquement les cellules vides de la colonne A

Cordialement

Edit : Attention que cela ne supprime pas la ligne entière mais uniquement les cellules vides de la colonne A. si c'est cela que vous cherchez, vous pouvez tester aussi ceci :

Sub suppr()
Range("A:A").SpecialCells(xlCellTypeBlanks).Delete Shift:=xlUp
End Sub

Merci beaucoup pour votre réponse Dan, j'ai modifié le code et cela fonctionne !
J'aimerais également rajouté une bordure sur la dernière cellule non vide de ma colonne mais encore une fois je n'y arrive pas. On m'affiche un problème avec l'objet range.

Voici ma nouvelle macro:

Merci

Sub suppr()

Dim l As Integer

For l = 26 To 1 Step -1
        If Cells(l, 1).Value = "" Then Cells(l, 1).Delete xlUp
Next l

derniereLigne = Cells(Rows.Count, 1).End(xlUp).Select
Range("derniereLigne").Borders(xlEdgeBottom).Weight = xlMedium

End Sub

comme ceci -->

Dim derniereligne as integer
derniereLigne = Cells(Rows.Count, 1).End(xlUp).row
Range("A " & derniereLigne).Borders(xlEdgeBottom).Weight = xlMedium

Cordialement

Merci beaucoup Dan tout marche comme sur des roulettes !

Rechercher des sujets similaires à "supprimer vides erreur 1004 boucle infinie"