Supprimer les lignes identiques rapidement... [VBA] - VB/VBA/VBS - Programmation
Marsh Posté le 16-11-2010 à 09:36:28
Il manque deux choses
la variable de taille de ton tableau
et la valeur testé :
|
Marsh Posté le 16-11-2010 à 20:54:06
Xxxaaavvv a écrit : Il manque deux choses
|
Thanx !
Je teste demain...
Marsh Posté le 16-11-2010 à 21:45:29
Finalement, je viens de tester sous Excel 2011.
Ton code est 3 fois plus rapide que ma -hum- méthode un peu archaïque...
Merci.
Marsh Posté le 17-11-2010 à 08:14:39
Super !
Clairement plus rapide ton code Xxxaaavvv.
J'ai effectivement créé une variable de type Single appelée NBLIGNE.
J'ai ensuite été sur la dernière ligne de ma plage : Range("B65536" ).End(xlUp).Select.
Là, je mets ActiveCell.Row dans NBLIGNE.
Puis je sélectionne ma plage : Range("B1:B" & NBLIGNE).Select
Cela fait gagner un peu plus de temps...
Sur un tableau de 22863 lignes :
- ma macro pas terrible : 22 secondes
- la macro de Xxxaaavvv : 3 secondes...
... pas mal... et d'ailleurs, on ne peut pas optimiser plus...
Bon... faut aussi que je me perfectionne en VBA...
Marsh Posté le 13-11-2010 à 13:13:33
Salut à tous !
Je cherche à supprimer rapidement les lignes d'un tableau Excel dont la valeur dans la colonne A est égale à une certaine valeur.
Jusqu'à présent, je me plaçait sur la dernière ligne et remontait le tableau ligne à ligne et à chaque fois que la condition était remplie, je supprimais...
Le souci est que dans un tableau très grand (plusieurs milliers de lignes), le traitement est très très long...
Y aurai-il moyen de procéder différemment pour accélérer cela ?
Genre : sélectionner la colonne et une commande quelconque supprime les lignes identiques...
ATTENTION : je ne veux pas trier les lignes...
Merci de votre aide...
---------------
iMac 4Ghz (fin 2015) RAM 16Go SSD 256Go SSD 2To