Suppression de ligne vide excel

Résolu/Fermé
pascalou83400 Messages postés 273 Date d'inscription dimanche 20 juillet 2014 Statut Membre Dernière intervention 24 janvier 2022 - Modifié le 23 nov. 2017 à 22:19
f894009 Messages postés 16866 Date d'inscription dimanche 25 novembre 2007 Statut Membre Dernière intervention 31 janvier 2023 - 27 nov. 2017 à 17:18
Bonjour,

J'ai un problème avec ce code, j'ai des lignes qui ne se suppriment pas, car j'ai 2 cellules remplient sur la ligne.

Donc je voudrais prendre comme référence ma colonne B ou je sais que je vais remonter à la dernière ligne qui m’intéresse.

Mais je ne sais pas comment écrire le code pour qu'il prenne comme référence la colonne B et qu'il m’efface toutes les lignes vides ?

Merci pour votre aide.

Bonne soirée.

Pascal
Sub Effaceleslignesfantomes()

Dim last As Variant
Dim ligne_libre As Variant
last = Range("A" & Rows.Count).End(xlUp).Row
'MsgBox "La dernière ligne est la " & last & "ième" ' juste pour se contrôler ...
Rows(last + 1 & ":" & Rows.Count).Select
Selection.Delete Shift:=xlUp

End Sub


NB : Pour poster du code sur le forum.. merci d'utiliser la coloration syntaxique (les balises de code).
Explications disponibles ici : https://codes-sources.commentcamarche.net/faq/10686-le-nouveau-codes-sources-comment-ca-marche#balises-code


A voir également:

6 réponses

f894009 Messages postés 16866 Date d'inscription dimanche 25 novembre 2007 Statut Membre Dernière intervention 31 janvier 2023 1 679
24 nov. 2017 à 07:39
Bonjour,

suppression ligne si aucune cellule non vide

Sub Sup_ligne_vide()
    With Worksheets("feuil1")       'adaptez le nom de feuille
        Nb = .Range("B" & .Rows.Count).End(xlUp).Row        'ligne derniere cellule non vide colonne B
        'boucle sur colonne B en commencant par la fin
        For n = Nb To 1 Step -1
            If Application.CountA(.Rows(n)) = 0 Then        'zero cellule non vide
                .Rows(n).Delete     'suppression ligne
            End If
        Next n
    End With
End Sub
0