Ceci est une page optimisée pour les mobiles. Cliquez sur ce texte pour afficher la vraie page.

XL 2016 filtre 2 critères

Usine à gaz

XLDnaute Barbatruc
Bonjour à toutes et à tous,

Je me mets actuellement à l'utilisation des filtres.
Je ne connais pas encore

je voudrais faire une sélection (affichage) sur 2 critères.
critère 1 : sur la colonne E,
critère 2 : sur la colonne F affichant que les dates = "aujourdhui()".

voici mon code :
Code:
Sub filtreAR()
    Application.EnableEvents = False
    Application.ScreenUpdating = False

Rows("5:5").Select
    Selection.AutoFilter
    ActiveSheet.Range("$E$5:$F$154").AutoFilter Field:=1, Criteria1:="A Rappeler"
    ActiveSheet.Range("$E$5:$F$154").AutoFilter Field:=2, Operator:=xlFilterValues, Criteria2:="=TODAY()"

    'ActiveSheet.Range("$E$5:$F$154").AutoFilter Field:=2, Operator:=xlFilterValues, Criteria2:=Array(2, "2/22/2019")

    Application.EnableEvents = False
    Application.ScreenUpdating = False

    Rows("7:2000").Select
    ActiveWorkbook.Worksheets("Répondeurs").Sort.SortFields.Clear
    ActiveWorkbook.Worksheets("Répondeurs").Sort.SortFields.Add Key:=Range( _
        "f7:f20000"), SortOn:=xlSortOnValues, Order:=xlAscending, DataOption:= _
        xlSortNormal
    With ActiveWorkbook.Worksheets("Répondeurs").Sort
        .SetRange Range("A7:BH20000")
        .Header = xlGuess
        .MatchCase = False
        .Orientation = xlTopToBottom
        .SortMethod = xlPinYin
        '.Apply
    End With

    Range("f5").Select
ActiveWindow.DisplayHeadings = False
Application.EnableEvents = True
Application.ScreenUpdating = True
End Sub

Mais je n'y arrive pas malgré mes tentatives et essais.
Je joins le classeur test.

Pourriez-vous m'aider ?

Avec mes remerciements,
Je vous souhaite une bonne journée à toutes et à tous,
Amicalement,
arthour9973,
 

Pièces jointes

  • filtre_dble_test.xlsm
    23.6 KB · Affichages: 5

Usine à gaz

XLDnaute Barbatruc
Re-Bonjour,

Je pense avoir trouvé mais pas pas sûr
Code:
Sub Macro1()
    Range("A4:b4").Select
    Selection.AutoFilter Field:=2, Criteria1:=">91"

    Range("a4:B4").Select
    Selection.AutoFilter Field:=2, Criteria1:=">37"

    Range("a1").Select
End Sub
 

Pièces jointes

  • filtre_2critères_test.xls
    45 KB · Affichages: 4

Usine à gaz

XLDnaute Barbatruc
Re-Bonjour à toutes et à tous,

Poursuivant mes recherches et sans résultat. Je suis allé "éplucher" les filtres de Mr Boisgontier.
http://boisgontierjacques.free.fr/

Dans l'un de ses fichiers, j'ai trouvé un code qui fonctionne très bien :
Code:
Sub filtreSup1Date()
  [A5].AutoFilter field:=5, Criteria1:=">=" & CDbl(CDate("06/03/2019"))
End Sub

Je voudrais filtrer sur la date du jour et je n'arrive pas à le faire fonctionner si je le modifie comme suit :
[A5].AutoFilter field:=5, Criteria1:=">=" & CDbl(CDate("=TODAY()"))

Pourriez-vous me corriger ?
Avec mes remerciements,
amicalement,
arthour973
 
Dernière édition:

Paf

XLDnaute Barbatruc
bonjour,

pas sûr que J. BOISGONTIER utilise Today() !!!

Pour le premier post , à tester:
VB:
Range("$E$5").AutoFilter Field:=1, Criteria1:="A Rappeler"
Range("$E$5").AutoFilter Field:=2, Criteria1:=Format(Date, "dd mm yy")
 

Usine à gaz

XLDnaute Barbatruc
Bonjour Paf,

Merci pour m'avoir répondu

Je planche depuis hier soir et je ne m'en sors pas LOL

J'ai testé ton code mais ça plante :
Code:
Sub Macro1()
    Range("A4:b100").Select
    Range("$E$4").AutoFilter Field:=1, Criteria1:="A Rappeler"
    Range("$E$4").AutoFilter Field:=2, Criteria1:=Format(Date, "dd mm yy")
  
'    Selection.AutoFilter Field:=2, Criteria1:="=<6"
'    ', Operator:=xlAnd, Criteria2:=">5"
    Range("a1").Select
End Sub

Je remets le fichier avec ton code ... et je continue mes recherches.
Amicalement,
arthour973
 

Pièces jointes

  • filtre_2critères_test.xls
    41 KB · Affichages: 2

Usine à gaz

XLDnaute Barbatruc
Super de chez super il semble bien que ça marche

Je joins le classeur car ça peut en intéresser d'autres.

Juste un truc :
Il ne filtre que sur la date du jour : ça tombe bien, c'est mon besoin LOL
Mais si je veux filtrer sur une autre date, c'est possible ?
Encore un grand merci.
amicalement,
arthour973,
 

Pièces jointes

  • filtre_2critères_test.xls
    41.5 KB · Affichages: 3

Paf

XLDnaute Barbatruc
pour filtrer sur les dates notamment, il faut que le critère ait le même format que les cellules à trier.

dans la colonne F la date à le format "jj mm aa" (ou dd mm yy) il faut donc appliquer le même format au critère


VB:
MaDate=Date ' tri date du jour
ou
VB:
Madate = range("A4")  '  tri sur cellule contenant une date
ou
VB:
MaDate= CDate("28/02/2019") ' tri sur date saisie manuellement

et

VB:
Range("$E$5").AutoFilter Field:=2, Criteria1:=Format(MaDate, "dd mm yy")
 

Usine à gaz

XLDnaute Barbatruc
Re -paf,
Je réponds avant que le site soit fermé.
LOL je n'y arrive pas, ça m'affiche rien du tout alors que je pense (sauf erreur) que A1 est bien formaté comme dans le code.
Si tu veux bien encore me donner un petit coup de neurones, je joins le classeur.
Amicalement,
arthour973
 

Pièces jointes

  • filtre_2critères_test.xls
    48.5 KB · Affichages: 4

Paf

XLDnaute Barbatruc
je n'ai pas dit que la cellule (qui allait servir de critère) devait être formatée comme dans le code, mais que le critère de recherche devait être formaté comme les cellules à trier.

Donc s'il y a une date en A1 : OK quelque soit son format (à vérifier quand même) pourvu que ce soit une date.

Mais d'où sortez vous ce format :
Selection.AutoFilter Field:=2, Criteria1:=Format(Range("A1"), "jj mm aa")

?
 

ChTi160

XLDnaute Barbatruc
Bonjour Cath
Bonjour le Fil (Paf),le Forum
ceux ci peut être
VB:
Sub Macro2()
Dim Dte
Dte = Format(Range("A1"), "mm/dd/yyyy")
With Cells(4, 1)
     .AutoFilter
     .AutoFilter Field:=1, Criteria1:="A Rappeler"
     .AutoFilter Field:=2, Criteria1:=">=" & Dte, Operator:=xlAnd, Criteria2:="<=" & Dte
End With
End Sub
jean marie
 
Dernière édition:

Paf

XLDnaute Barbatruc
Bonjour Chti60,

les données en colonne B sont des dates au format personnalisé "jj mm aa", et
... Format(Range("A1"), "mm/dd/yy") ne fonctionne pas correctement.

J'avais proposé au post 5:
Range("$E$5").AutoFilter Field:=2, Criteria1:=Format(Date, "dd mm yy")
qui fonctionne pour ce type d'affichage.

Je crois que arthour973 à fait un méli-mélo dans les formats à appliquer.
 

Usine à gaz

XLDnaute Barbatruc
Bonjour Jean Marie, Paf, le Forum,
Bon WE à toutes et à tous,

Jean Marie : merci pour m'avoir répondu ... je vais tester

Paf : c'est bon ça marche maintenant, grâce à toi
Je crois que @arthour973 à fait un méli-mélo dans les formats à appliquer. LOL c'était ben vrai ça

Je joins le fichier.
amicalement,
arthour973
 

Pièces jointes

  • filtre_2critères_test.xlsm
    34.4 KB · Affichages: 9

Discussions similaires

Les cookies sont requis pour utiliser ce site. Vous devez les accepter pour continuer à utiliser le site. En savoir plus…