Bonjour à Tous,
Après plusieurs jour de recherche je le net je me suis décidé à vous écrire car je bloque sur une macro.
Je débute dans ce domaine et un coup de main serait le bienvenu.
Je vous explique, dans un tableau sur la colonne L je fais un filtre sur un critère « OK », ensuite je copie/colle les lignes « OK » sur une autre feuille, je reviens à ma première feuille, je sélectionne puis surprime les lignes qui étaient « OK ».
Ensuite, je lance une autre filtre sur une autre colonne et répète le copier/coller, sélectionner, supprimer.
Le problème que je rencontre est que si dans le premier filtre il n’y a pas de critère « OK » à copier/coller je voudrais que ma macro passe directement au second filtre. (C'est-à-dire dans ma macro ci-dessous de passer de l’étape 1 de l’étape à 4 directement)
Voila se que j’ai écrit … si quelqu’un pouvait me venir en aide.
Merci d’avance.
1/ Premier filtre : Critère Filtre « OK »
Sheets("Feuil1").Select
Range("A2").Select
Selection.AutoFilter
ActiveSheet.Range("$A$2:$L$500").AutoFilter Field:=12, Criteria1:="<>"
Range("A1").Select
2/ Copier/Coller après Filtre « OK »
Copier
Const nomFO = " Feuil1" ' nom de la feuille Origine
Dim lifin As Long
lifin = Range("B" & Rows.Count).End(xlUp).Row
Sheets(nomFO).Range("A3:J" & lifin).Copy
Coller sur Feuil2
Sheets("Feuil2").Select
Range("A1").Select
Dim Ligne, dernière As Integer
Range("A1").Select
For i = 1 To 10
Ligne = Cells(65530, i).End(xlUp).Row
If Ligne > dernière Then dernière = Ligne
Next i
Range("A" & dernière).Offset(1, 0).Select
ActiveSheet.Paste
Range("A1").Select
Sheets("Feuil1").Select
Range("A1").Select
3/ Sélectionner lignes avec filtre « OK » + surprimer
Const nomFO = " Feuil1" ' nom de la feuille Origine
Dim lifin As Long
lifin = Range("B" & Rows.Count).End(xlUp).Row
Sheets(nomFO).Range("A3:J" & lifin).Select
Selection.EntireRow.Delete
Range("A1").Select
End Sub
4/ Second filtre : Critère Filtre ne contient pas «-»
Sheets("Feuil1").Select
Rows("2:2").Select
Selection.AutoFilter
Range("A2").Select
Selection.AutoFilter
ActiveSheet.Range("$A$2:$K$500").AutoFilter Field:=11, Criteria1:="<>*-*", _
Operator:=xlAnd
Après plusieurs jour de recherche je le net je me suis décidé à vous écrire car je bloque sur une macro.
Je débute dans ce domaine et un coup de main serait le bienvenu.
Je vous explique, dans un tableau sur la colonne L je fais un filtre sur un critère « OK », ensuite je copie/colle les lignes « OK » sur une autre feuille, je reviens à ma première feuille, je sélectionne puis surprime les lignes qui étaient « OK ».
Ensuite, je lance une autre filtre sur une autre colonne et répète le copier/coller, sélectionner, supprimer.
Le problème que je rencontre est que si dans le premier filtre il n’y a pas de critère « OK » à copier/coller je voudrais que ma macro passe directement au second filtre. (C'est-à-dire dans ma macro ci-dessous de passer de l’étape 1 de l’étape à 4 directement)
Voila se que j’ai écrit … si quelqu’un pouvait me venir en aide.
Merci d’avance.
1/ Premier filtre : Critère Filtre « OK »
Sheets("Feuil1").Select
Range("A2").Select
Selection.AutoFilter
ActiveSheet.Range("$A$2:$L$500").AutoFilter Field:=12, Criteria1:="<>"
Range("A1").Select
2/ Copier/Coller après Filtre « OK »
Copier
Const nomFO = " Feuil1" ' nom de la feuille Origine
Dim lifin As Long
lifin = Range("B" & Rows.Count).End(xlUp).Row
Sheets(nomFO).Range("A3:J" & lifin).Copy
Coller sur Feuil2
Sheets("Feuil2").Select
Range("A1").Select
Dim Ligne, dernière As Integer
Range("A1").Select
For i = 1 To 10
Ligne = Cells(65530, i).End(xlUp).Row
If Ligne > dernière Then dernière = Ligne
Next i
Range("A" & dernière).Offset(1, 0).Select
ActiveSheet.Paste
Range("A1").Select
Sheets("Feuil1").Select
Range("A1").Select
3/ Sélectionner lignes avec filtre « OK » + surprimer
Const nomFO = " Feuil1" ' nom de la feuille Origine
Dim lifin As Long
lifin = Range("B" & Rows.Count).End(xlUp).Row
Sheets(nomFO).Range("A3:J" & lifin).Select
Selection.EntireRow.Delete
Range("A1").Select
End Sub
4/ Second filtre : Critère Filtre ne contient pas «-»
Sheets("Feuil1").Select
Rows("2:2").Select
Selection.AutoFilter
Range("A2").Select
Selection.AutoFilter
ActiveSheet.Range("$A$2:$K$500").AutoFilter Field:=11, Criteria1:="<>*-*", _
Operator:=xlAnd