[Résolu] Raccourcir mon code VBA moche

djodjodjo

XLDnaute Occasionnel
Bonjour à tout le forum,

aujourd'hui j'ai besoin d'aide pour supprimer toutes les lignes vides d'un fichier Excel MAIS en ne commençant qu'à partir de la colonne B.

Actuellement mon code est:

Code:
Application.ScreenUpdating = False
For n = ActiveSheet.UsedRange.Rows.Count To 1 Step -1
If Range("B" & n) = "" And Range("C" & n) = "" And Range("D" & n) = "" And Range("E" & n) = "" And Range("F" & n) = "" And Range("G" & n) = "" Then Rows(n).Delete
Next n
Application.ScreenUpdating = True

Ca fonctionne bien mais vous en conviendrez, c'est très moche !

C'est une idée, mais peut-être est-il possible (ou pas) de réutiliser ce code trouvé ICI :

Code:
With ActiveSheet.UsedRange 
DerLi = .Row + .Rows.Count - 1 
End With

For r = DerLi To 1 Step -1
If Application.CountA(Rows(r)) = 0 Then Rows(r).Delete
Next r

Il supprime toutes les lignes vides sans tenir compte de la colonne A qui dans mon cas ne sera jamais vide (c'est tout ce qui est après cette colonne que je veux tester).

J'espère avoir été suffisamment clair... Merci d'avance pour votre aide !
 
Dernière édition:

djodjodjo

XLDnaute Occasionnel
Re : Raccourcir mon code VBA moche

Je ne comprends pas le souci, c'est ce que je recherche moi !! Que si toutes les cellules comprises entre la colonne B et la dernière colonne sont vides sur une ligne, alors toute la ligne est supprimée.

Donc c'est normal que tes lignes avec les "NE PAS EFFACER" en colonne A soient supprimées puisqu'elle ne comportent aucune autre donnée dans les colonnes qui suivent... contrairement à tes autres lignes remplies de chiffres...
 

Discussions similaires

Réponses
5
Affichages
262

Statistiques des forums

Discussions
312 775
Messages
2 092 023
Membres
105 151
dernier inscrit
Stephkno