XL 2013 Suppression ligne

Moreno076

XLDnaute Impliqué
Bonjour à tous.

Je souhaiterais une macro qui me permettent de rechercher dans la colonne B diverses valeurs et dès que cette valeur existe de supprimer la ligne entière.

Par exemple dans la colonne B s'il y a la valeur .202 supprimer la ligne, s'il y a la valeur .a9 supprimer la ligne.

Merci pour votre aide
 
Solution
Bonjour Moreno,
Vous pourriez essayer cela :
VB:
Sub Supprime()
Dim DerLig As Integer, i As Integer
DerLig = Sheets("Feuil1").Range("B65500").End(xlUp).Row
For i = DerLig To 1 Step -1
    If Cells(i, 2) = "202" Or Cells(i, 2) = "a9" Then ' rajouter les critères de suppression
        Cells(i, 1).EntireRow.Delete
    End If
Next i
End Sub

sylvanu

XLDnaute Barbatruc
Supporter XLD
Bonjour Moreno,
Vous pourriez essayer cela :
VB:
Sub Supprime()
Dim DerLig As Integer, i As Integer
DerLig = Sheets("Feuil1").Range("B65500").End(xlUp).Row
For i = DerLig To 1 Step -1
    If Cells(i, 2) = "202" Or Cells(i, 2) = "a9" Then ' rajouter les critères de suppression
        Cells(i, 1).EntireRow.Delete
    End If
Next i
End Sub
 

Moreno076

XLDnaute Impliqué
Bonjour Moreno,
Vous pourriez essayer cela :
VB:
Sub Supprime()
Dim DerLig As Integer, i As Integer
DerLig = Sheets("Feuil1").Range("B65500").End(xlUp).Row
For i = DerLig To 1 Step -1
    If Cells(i, 2) = "202" Or Cells(i, 2) = "a9" Then ' rajouter les critères de suppression
        Cells(i, 1).EntireRow.Delete
    End If
Next i
End Sub

Pas besoin de critères, ca fonctionne à merveille. Merci
 

job75

XLDnaute Barbatruc
Voyez le fichier joint avec un tableau de 30 000 lignes et cette macro :
VB:
Sub Supprimer()
Application.ScreenUpdating = False
With ActiveSheet.UsedRange
    .Columns(2).EntireColumn.Insert 'insère une colonne auxiliaire
    With .Columns(2)
        .FormulaR1C1 = "=1/OR(RC[1]=202,RC[1]=""a9"")"
        .Value = .Value 'supprime les formules
        .EntireRow.Sort .Cells, xlDescending  'tri pour regrouper et accélérer
        On Error Resume Next 'si aucune SpecialCell
        .SpecialCells(xlCellTypeConstants, 1).EntireRow.Delete
        .EntireColumn.Delete 'supprime la colonne auxiliaire
    End With
End With
With ActiveSheet.UsedRange: End With 'actualise les barres de défilement
End Sub
La suppression de 15 000 lignes (disjointes) est immédiate.
 

Pièces jointes

  • Supprimer(1).xlsm
    932.9 KB · Affichages: 12

Discussions similaires

Réponses
22
Affichages
743
Réponses
6
Affichages
125
Réponses
2
Affichages
403

Statistiques des forums

Discussions
312 104
Messages
2 085 345
Membres
102 868
dernier inscrit
JJV