Comment supprimer une ligne avec un nom commencant par

Résolu
Marie Chant Messages postés 147 Statut Membre -  
Marie Chant Messages postés 147 Statut Membre -
Bonjour,

J'aimerais un peu d'aide s.v.p.

je voudrais que ma macro supprime aussi toutes les lignes qui dans ma colonne "A" commence par TRE ou par PER que dois-je ajouter a ma macro?

Merci beaucoup de votre aide.

Dim LastLig As Long
Application.ScreenUpdating = False
With Sheets("Extrait eleve")
.AutoFilterMode = False
LastLig = .Cells(.Rows.Count, "B").End(xlUp).Row
.Range("B1:B" & LastLig).AutoFilter Field:=1, Criteria1:="Rapport eleve ", Operator:=xlOr, Criteria2:="Notes"
On Error Resume Next
.Range("b2:b" & LastLig).SpecialCells(xlCellTypeVisible).EntireRow.Delete
On Error GoTo 0
.AutoFilterMode = False
End With
End Sub

3 réponses

  1. Mytå Messages postés 4246 Date d'inscription   Statut Contributeur Dernière intervention   957
     
    Salut le Forum

    Petite précision :
    Dans la colonne "A" commence par TRE ou par PER
    Dans la colonne "B" contient "Rapport eleve" et "Notes"
    Les deux conditions en même temps . . .

    Mytå
    0
    1. Marie Chant Messages postés 147 Statut Membre 9
       
      oui ca pourrait etre en meme temps. Dans ma liste de dois supprimer les lignes ou il y a "Notes" et "Rapport eleve" dans la colonne B et ce qui commence par TRE et PER dans la colonne A. J'ai plus de 100 000 lignes en tout.

      Et oui ca pourrait etre les deux conditions en meme temps. Je ne sais pas comment faire?

      merci de votre aide Myta
      0
  2. Mytå Messages postés 4246 Date d'inscription   Statut Contributeur Dernière intervention   957
     
    Re le Forum

    Les deux conditions en même temps

    Sub Filtre_()
    Dim LastLig As Long

    With Sheets("Feuil1")
    .AutoFilterMode = False
    LastLig = .Cells(.Rows.Count, "B").End(xlUp).Row
    With .Range("A1:B" & LastLig)
    .AutoFilter Field:=1, Criteria1:="=TRE*", Operator:=xlOr, Criteria2:="=PRE*"
    .AutoFilter Field:=2, Criteria1:="Rapport eleve ", Operator:=xlOr, Criteria2:="Notes"
    On Error Resume Next
    .Range("A2:B" & LastLig).SpecialCells(xlCellTypeVisible).EntireRow.Delete
    On Error GoTo 0
    End With
    .AutoFilterMode = False
    End With

    End Sub

    Mytå
    0
    1. Marie Chant Messages postés 147 Statut Membre 9
       
      Merci beaucoup Mytâ,

      Vous venez de votre un soleil sur ma journée

      Merci mille fois.:-)
      Bonne journée!
      0
  3. Mytå Messages postés 4246 Date d'inscription   Statut Contributeur Dernière intervention   957
     
    Re le Forum

    Pour effacer les deux conditions (Colonne A et ensuite colonne B)

    Sub Filtre_()
    Dim LastLig As Long

    With Sheets("Feuil1")
    .AutoFilterMode = False
    LastLig = .Cells(.Rows.Count, "B").End(xlUp).Row
    With .Range("A1:B" & LastLig)
    .AutoFilter Field:=1, Criteria1:="=TRE*", Operator:=xlOr, Criteria2:="=PRE*"
    End With
    If .AutoFilter.Range.Columns(1).SpecialCells(xlCellTypeVisible).Cells.Count > 1 Then _
    .Range("A2:B" & LastLig).SpecialCells(xlCellTypeVisible).EntireRow.Delete
    .AutoFilterMode = False
    With .Range("A1:B" & LastLig)
    .AutoFilter Field:=2, Criteria1:="Rapport eleve", Operator:=xlOr, Criteria2:="Notes"
    End With
    If .AutoFilter.Range.Columns(1).SpecialCells(xlCellTypeVisible).Cells.Count > 1 Then _
    .Range("A2:B" & LastLig).SpecialCells(xlCellTypeVisible).EntireRow.Delete
    .AutoFilterMode = False
    End With

    End Sub

    Mytå
    0
    1. Marie Chant Messages postés 147 Statut Membre 9
       
      Merci beaucoup Mytâ

      Je vous souhaite une excellente journée!
      0