effacer une ligne sur deux

  • Initiateur de la discussion Initiateur de la discussion echane
  • Date de début Date de début

Boostez vos compétences Excel avec notre communauté !

Rejoignez Excel Downloads, le rendez-vous des passionnés où l'entraide fait la force. Apprenez, échangez, progressez – et tout ça gratuitement ! 👉 Inscrivez-vous maintenant !

E

echane

Guest
salut

je sais qu'on peut tres facilement effacer une ligne sur deux avec une simple boucle, mais existe-t-il un moyen plus rapide ?

mon fichier a plus de 19000 lignes (c'est des genes) et ca prend plusieurs minutes pour le faire avec une boucle (meme en desactivant le rafraichissement de l'affichage)

merci de m'aider, je suis en stage au canada et c'est la premiere fois que j'utilise serieusement excel 🙂

+
 
Bonsoir Echane

Ben en fait ça dépend de deux choses...

D'une part de ta boucle et ensuite de ton matériel...

si tu avais un exemple de boucle p'têt qu'on aura une idée plus précise ?...car des boucles on peut en avoir de toutes les sortes...

Et pourquoi pas un renseignement sur ta "bécane"...type de processeur/ mémoire / version système / Excel...

Avec ces renseignements, on aura la possibilité de te répondre au plus juste

Voilà pour moi...

et...
Bienvenue_XLD.gif

A+Veriland.gif
 
'lut

j'utilise ce type de boucle (qu'on trouve un peu partout sur internet) :
DerniereLigne = ActiveSheet.UsedRange.Rows.Count
Application.ScreenUpdating = False
For R = DerniereLigne To 2 Step -2
Rows(R).Delete
Next R
ActiveWindow.WindowState = xlNormal

je travaille sur un P4 1.8 ghz avec 500 MO de Ram (ca peut aller, non ?)

voila, merci de ta reponse rapide

la journee de travail est finie pour moi 🙂

+
 
Ah ben j'm'incline...à côté de toi j'ai un "petite bécane"...lol...Pentium III 900, 350 Mo
smiley_234.gif


Alors j'ai testé plusieurs type de boucles...mais il c'est avéré que la tienne fonctionnait bien...bon après avoir déclaré R et DerniereLigne as Integer j'ai mis 59 secondes pour boucler la boucle...lool
smiley_617.gif


Donc là je ne vois pas c'qui pourrait être mieux...
smiley_115.gif


mais p'têt qu'avec sa baguette magique not' magicien VBA fera une boucle plus rapide...loool
smiley_249.gif


Bon vé
smiley_827.gif


Bonne nuit

A+Veriland.gif
 
Après de longues séries d'essais de suppression de lignes une par une, puis par paquets (30, 80, 100, 1000, 5000 - au delà ça rame trop) je n'ai pas constaté d'améliorations notables. Sur un fichier de 21750 lignes, ça tournait chez moi autour de 1 min 30 (sauf les paquets de 10000 qui tournent en plus de 4 min).
Donc j'ai pris le problème à l'envers, et je n'ai plus supprimé, mais copié les lignes sur une feuille temporaire, puis retransféré sur la feuille d'origine.

Résultat pour un fichier de 25000 lignes :

La boucle basique (suppression de lignes) : 1 min 45
Ma boucle (copier-coller) : 30 secondes

Je suis donc 3,5 x plus rapide

L'inconvénient de cette méthode (il y en a peut-être d'autres que j'oublie, il faudrait tester) : s'il y a des cellules liées verticalement, elles ne seront pas restituées correctement. On peut tout de même dire que sur un fichier de données classique, sans mise en forme particulière, on peut utiliser cette méthode en confiance.
 

Pièces jointes

merci pour ces reponses !!!

avec le code copier/coller c'est passe de 2 min a 19 s !!
c'est trop fort 🙂
Ce que je fais doit servir a comparer des genes de singes et d'humain (etude sur le VIH)
c'est loin d'etre fini, mais ca avance, c bien

encore merci !!

+
 
bonjour

si tes données sont dans les colonnes A B et C et les étiquettes dans la première ligne, rajoute en D2 1 et 2 en D3, et recopie ces deux cellules juusqu'à la fin.

puis pose un filtre sur le tableau, filtre la 4iè_me colonne avec la valeur 2

sélectionne toutes les lignes visibles et supprime les entièrement

manuellement c'est long
mais en macro c'est peut-être rapide ????,
 
- Navigue sans publicité
- Accède à Cléa, notre assistante IA experte Excel... et pas que...
- Profite de fonctionnalités exclusives
Ton soutien permet à Excel Downloads de rester 100% gratuit et de continuer à rassembler les passionnés d'Excel.
Je deviens Supporter XLD
Assurez vous de marquer un message comme solution pour une meilleure transparence.

Discussions similaires

Réponses
12
Affichages
966
Réponses
3
Affichages
876
Réponses
2
Affichages
651
Réponses
7
Affichages
1 K
Retour