Suppression de ligne

Salut a tous,

voila je recherche un code qui me permette de supprimer des lignes en fonction d'une cellule qui serait vide

plus concrètement, si B4 est vide alors la ligne 4 est supprimée ... la recherche se ferra toujours sur la colonne B et la suppression en fonction du numéro de ligne.

j'ai donc commencé un code, mais qui ne fonctionne pas bien évidement.

For Each Cellule In Columns("AK")

Cells.Find(What:="", After:=ActiveCell, LookIn:=xlFormulas, LookAt:= _

xlPart, SearchOrder:=xlByColumns, SearchDirection:=xlNext, MatchCase:= _

False, SearchFormat:=False).Activate

selection.EntireRow.delete

Next Cellule

Merci par avance pour votre aide

a plus

Laurent

Bonjour,

la boucle est ce qu'il y a de plus lent, mieux vaut utiliser un filtre ou un filtre avancé pour supprimer en une seule fois …

Quant à ton code, corrige donc la colonne ‼

pour la colonne ... AK est la bonne colonne c'est B qui était un exemple ....

J'ai essayé avec les filtres, mais mon fichier fait 282 000 lignes et j'aurai voulu supprimer des lignes qui me servent a rien afin d'alleger le fichier

Code déjà inutile avec un filtre, aucun souci …

comment ça aucun souci ???

282000 lignes, si tu fais un filtre, et que tu veux supprimer les lignes qui ressortent de ton filtre, il est tres tres tres long ...

je recherche un moyen pour qu'il soit plus rapide ...

si quelqu'un a une solution ?

La boucle est bien pire vu que c'est du code interprété, donc c'est forcément encore plus long ‼

Autre possibilité sans code : au lieu de supprimer les lignes vides, copier les lignes non vides dans une nouvelle feuille

via un filtre avancé, c'est rapide ! Astuce : se placer sur la feuille de destination avant d'appeler le filtre avancé …

ok je laisse tomber la boucle ...

mais qu’appelles-tu le filtre avancé ?

pour info, j'ai excel 2010

C'est l'autre type de filtre existant déjà bien avant la version 2003 !

et tu fais comment pour l'utiliser ??? car franchement je vois pas ??? ou j'ai vraiment du mal aujourd'hui

Dans le même menu du filtre il y a aussi le filtre avancé et il dispose d'un assistant : simple donc (avec l'astuce déjà évoquée).

Sinon c'est documenté dans l'aide d'Excel et il y a même des tutoriels sur le Web …

Introduit dans la version 1997 !

Hello

Marc L ou le fan des filtres avancés

Mais c'est vrai que c'est puissant

Bonne journée

Disons quand tu passes du temps à créer un code d'une bonne trentaine de lignes (et j'ai vu bien plus),

son exécution nécessitant de longues secondes voire des minutes, tu es vraiment dégoûté

lorsque moins de dix lignes de code créées en trois minutes suffisent pour exécuter le même traitement instantanément !


We are all very ignorant, what happens is that not all ignore the same things … (Albert Einstein)

Bon c'est un problème que je n'ai pas : je ne suis pas capable de faire 5 lignes de codes !

Alors tu es un artiste !

Et l'Enregistreur de macros, formidable outil à la disposition de tout à chacun ! 8)


Si déboguer est l’art de corriger les bogues, alors programmer est l’art d’en faire !

Il est jamais trop tard pour apprendre !

Bon je me tais le Monsieur à besoin d'aide pour son fil et pas de mes commentaires inutiles ! :p

Bonsoir à tous,

Effectivement la boucle est moins rapide, mais pour l'accélérer sensiblement, éviter impérativement les "select-selection".

La boucle sera alors beaucoup plus rapide !

Oui comme désactiver l'affichage et le mode de calcul automatique …

… mais j'ai déjà vu de telles procédures bien longues à s'exécuter comparativement à la célérité du filtre avancé !

Sans compter la maintenance bien plus facile …

Rechercher des sujets similaires à "suppression ligne"