Comment supprimer une ligne avec un nom commencant par

Résolu/Fermé
Signaler
Messages postés
78
Date d'inscription
lundi 24 mars 2014
Statut
Membre
Dernière intervention
18 mai 2017
-
Messages postés
78
Date d'inscription
lundi 24 mars 2014
Statut
Membre
Dernière intervention
18 mai 2017
-
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

Messages postés
2967
Date d'inscription
mardi 20 janvier 2009
Statut
Contributeur
Dernière intervention
20 décembre 2016
891
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å
Messages postés
78
Date d'inscription
lundi 24 mars 2014
Statut
Membre
Dernière intervention
18 mai 2017

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
Messages postés
2967
Date d'inscription
mardi 20 janvier 2009
Statut
Contributeur
Dernière intervention
20 décembre 2016
891
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å
Messages postés
78
Date d'inscription
lundi 24 mars 2014
Statut
Membre
Dernière intervention
18 mai 2017

Merci beaucoup Mytâ,

Vous venez de votre un soleil sur ma journée

Merci mille fois.:-)
Bonne journée!
Messages postés
2967
Date d'inscription
mardi 20 janvier 2009
Statut
Contributeur
Dernière intervention
20 décembre 2016
891
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å
Messages postés
78
Date d'inscription
lundi 24 mars 2014
Statut
Membre
Dernière intervention
18 mai 2017

Merci beaucoup Mytâ

Je vous souhaite une excellente journée!