Filtre selon 2 critères

Bonjour à tous,

Je souhaiterais filtrer "masquer" les lignes de la feuille "DP DS Cde" à l'aide du bouton "RESTE A SERVIR" pour les cellules de la plage H5:H30000 ne contenant pas l'un de ces 2 critères ci-dessous :

Critère 1 : La cellule contient "QTE servie ?", je ne la masque pas

OU

Critère 2 : La valeur de la cellule est strictement inférieur à 0, je ne la masque pas

Les lignes seront donc masquées lorsque "leur valeur est supérieur ou égale à 0" ou lorsque celle-ci sont vides.

Une première macro a été réalisée "Reste_à_servir_DP_DS_Cde", celle-ci prend en compte le Critère 1 :

Sub Reste_à_servir_DP_DS_Cde()

Sheets("DP DS Cde").Select

Selection.AutoFilter Field:=8, Criteria1:=("QTE servie ?")

DerLig = Sheets("DP DS Cde").Range("A65536").End(xlUp).Row

Rows("8:" & DerLig).Copy

Range("A5").Select

Application.CutCopyMode = False

Worksheets("DP DS Cde").Protect UserInterfaceOnly:=True

End Sub

mais je ne parviens pas à mettre en place le critère 2

Auriez-vous une idée ?

Merci

Fabien

Bonjour

Un essai à tester. Te convient-il ?

Bye !

Merci beaucoup gmb !!!

Ci-dessous, la macro pour ceux à qui cela pourrait-être utile :

Sub Reste_à_servir_DP_DS_Cde()
    ActiveSheet.Unprotect
    ActiveSheet.Range("$A$4:$M$" & ActiveSheet.Range("A" & Rows.Count).End(xlUp).Row).AutoFilter Field:=8, Criteria1:="<=0", _
        Operator:=xlOr, Criteria2:="=QTE servie ?"
    ActiveSheet.Protect DrawingObjects:=True, Contents:=True, Scenarios:=True
End Sub

A plus

gmb, dans le cas ou le critère 2 serait dans la colonne 1, quel serait les modifications à apporter à la macro svp ?

Bonjour

dans le cas ou le critère 2 serait dans la colonne 1,

C'est à dire ? Sois plus clair !

Bye !

Je dois réaliser un autre filtre selon 2 critères sur les feuilles "ETIQUETTES EXPE" et "ETIQUETTES ASS".

La seule différence par rapport au cas précédent est que le filtre s'effectue selon 2 critères indiqués dans 2 colonnes différentes.

Critère 1 : Le contenu des cellules de la colonne A est égal à celui de la cellule D1

Critère 2 : Il est indiqué "DS" dans les cellules de la colonne B

Si ces 2 critères ne sont pas respectés, CACHER LA LIGNE

Une première macro fonctionnelle a été réalisée "Filtrer_DP_Etiquettes_Expe" mais elle est relativement longue à charger :

Sub Filtrer_DP_Etiquettes_Expe()
Application.ScreenUpdating = False
Dim Ligne As Long
    For Ligne = Cells(Rows.Count, "A").End(xlUp).Row To 2 Step -1
        If Not (Cells(Ligne, "A") = Range("C1") And Cells(Ligne, "B") = ("DS")) Then Rows(Ligne).Hidden = True
    Next Ligne
Application.ScreenUpdating = True
Worksheets("ETIQUETTES EXPE").Protect UserInterfaceOnly:=True
End Sub

Serait-il possible de modifier cette macro afin :

- de la rendre plus rapide

- de mettre la cellule D1 de couleur verte lorsque le bouton "FILTRER DP" est actif

Merci

Fabien

Rechercher des sujets similaires à "filtre criteres"