Ceci est une page optimisée pour les mobiles. Cliquez sur ce texte pour afficher la vraie page.

XL 2010 Suppression de lignes si toutes les cellules de cette même ligne est = 0

Aurélie13008

XLDnaute Nouveau
Bonjour,

J'explique ma problématique : je dois vérifier pour chaque ligne si toutes les colonnes sont à 0 (dans mon fichier joint colonne de I à Q). Si elles sont bien à 0 je veux supprimer les lignes. Je voudrais pouvoir faire cela en automatique dès que ma requête sort.

Je souhaiterais savoir comment adapter un code VBA que j'ai vu sur votre forum pour vérifier et l'adapter à ma situation. c'est-à-dire qu'au lieu que le déclencheur soit 1 seule cellule à 0, je veux que ce soit les cellules de I à Q. J'espère que c'est assez claire, histoire de pas faire perdre du temps...

Merci bcp

Ci-dessous le code trouver sur votre forum

Option Explicit

Sub Elimine_0()
Dim Lig%
Application.ScreenUpdating = 0

For Lig = [C65536].End(xlUp).Row To 1 Step -1
If Range("C" & Lig).Value = 0 Then Rows(Lig).Delete
Next
End Sub
 

Pièces jointes

  • Test 1.xls
    53.5 KB · Affichages: 6

job75

XLDnaute Barbatruc
Vous n'aviez qu'à fournir le bon fichier !

En général il y a bug sur un tri quand des cellules sont fusionnées...

J'ai testé les macros sur un tableau de (seulement) 6600 lignes.

Chez moi sur Excel 2019 :

- macros des posts #2, #7 et #10 => 41 secondes

- macro du post #14 => 0,3 seconde.
 

job75

XLDnaute Barbatruc
Si les cellules fusionnées sont toutes au-dessus de la ligne 14 vous vous en sortirez avec :
VB:
    .Range("14:" & .Rows.Count).EntireRow.Sort .Columns(25), xlDescending, Header:=xlNo 'tri décroissant pour placer les 1 en bas
 

Discussions similaires

Réponses
2
Affichages
153
Les cookies sont requis pour utiliser ce site. Vous devez les accepter pour continuer à utiliser le site. En savoir plus…