XL 2016 Suppression Ligne si toutes valeur = 0

ynx69

XLDnaute Junior
Bonjour à tous,

je cherche à réaliser un code pour une macro avec pour objectif de supprimer toutes les lignes dont TOUS les champs sont égales à 0. Je souhaiterais que ma macro boucle sur toutes les feuilles de mon classeur ...

Avez vous une idée ?
Merci d'avance

Cdt

Ps : fichier type en pièce jointe. J'ai fais expres de ne pas coller le tableau au même endroit suivant chaque feuille mais si cela est gênant alors j'adapterais la disposition au code vba !
 

Pièces jointes

  • test.xlsx
    16.1 KB · Affichages: 24

mapomme

XLDnaute Barbatruc
Supporter XLD
Bonjour ynx69,

Voir un essai avec le code qui suit (dans module1). Exécuter la procédure TEST.
VB:
Sub TEST()
Dim xsh As Worksheet
   For Each xsh In ThisWorkbook.Worksheets: SupprLig0 xsh: Next xsh
End Sub

Sub SupprLig0(xF As Worksheet)
Dim rg As Range, tablo, i&, j&, s
   Application.ScreenUpdating = False
   With xF
      Set rg = .Cells(.Rows.Count, "a").End(xlUp).CurrentRegion
      tablo = rg.Value
      For i = rg.Rows.Count To 2 Step -1
         s = 0
         For j = 2 To UBound(tablo, 2): s = s + Abs(Val(tablo(i, j))): Next j
         If s = 0 Then rg.Rows(i).Delete xlShiftUp
      Next i
   End With
End Sub
 

Pièces jointes

  • ynx69- suppr liggne à 0- v1.xlsm
    26.4 KB · Affichages: 20
Dernière édition:

Discussions similaires

Statistiques des forums

Discussions
312 104
Messages
2 085 344
Membres
102 865
dernier inscrit
FreyaSalander