XL 2013 Suppression d'une ligne selon la valeur d'une cellule

bertilemeusien

XLDnaute Nouveau
Bonjour,

Je débute en VBA mais je ne demande qu'à apprendre!
Je voudrais supprimer les lignes d'une plage de cellules dont 1 cellule st égale à 0
Merci de votre aide
 

sylvanu

XLDnaute Barbatruc
Supporter XLD
Bonsoir bertilemeusien,
Un essai en PJ avec :
VB:
Sub SupLignes()
    Application.ScreenUpdating = False
    DL = Range("A65500").End(xlUp).Row                          ' Dernière ligne colonne A
    For L = 1 To DL                                             ' Pour toutes les lignes
        If Application.CountIf(Rows(L & ":" & L), 0) > 0 Then   ' S'il y a un 0 dans une des cellules
            Rows(L & ":" & L).Delete Shift:=xlUp                ' Supprimer la ligne
        End If
    Next L
End Sub
Le second bouton ne sert à rien sinon à copier le tableau pour faire les tests.
 

Pièces jointes

  • SupLignes.xlsm
    18.5 KB · Affichages: 1

job75

XLDnaute Barbatruc
Bonjour à tous,

Une solution classique, très rapide sur de grands tableaux :
VB:
Sub Epurer()
Application.ScreenUpdating = False
With [A49:C89] 'à adapter
    .Columns(4).Insert xlToRight 'insère une colonne auxiliaire
    .Columns(4) = "=1/AND(RC[-3]<>0,RC[-1]<>0)" 'critère
    .Columns(4) = .Columns(4).Value 'suppri>me les formules
    .Resize(, 4).Sort .Columns(4), xlAscending, Header:=xlNo 'tri pour regrouper et accélérer
    On Error Resume Next 'si aucune SpecialCell
    Intersect(.Columns(4).SpecialCells(xlCellTypeConstants, 16).EntireRow, .Resize(, 4)).Delete xlUp
    .Columns(4).Delete xlToLeft 'supprime la colonne auxiliaire
End With
End Sub
A voir s'il faut mettre AND ou OR dans la formule...

A+
 

Pièces jointes

  • Comparaison fichiers Année et Recensement - Copie.xlsm
    149.1 KB · Affichages: 0

Discussions similaires

Statistiques des forums

Discussions
312 206
Messages
2 086 220
Membres
103 158
dernier inscrit
laufin