XL 2021 VBA Filtre dans Tableau

Xxaann

XLDnaute Occasionnel
Bonjour,

Je souhaite réaliser un filtre dans un tableau Excel entre deux dates, hélas quand j'exécute ma macro, rien ne s'affiche.
tableau vide, aucune donnée.
Ensuite, quand manuellement je vais dans le filtre ma sélection est bien prise, et quand je valide, ca s'affiche.


j'ai essayé un autorefresh, rien...
je ne comprends pas

en copie je mets un fichier exemple

mon code:

Sub Trie1()
Dim nowD As Date: Dim maxD As Date


Sheets("SET").Select
nowD = Range("L3").Value
maxD = Range("L4").Value

Sheets("ERP").Select
ActiveSheet.ListObjects("Tableau2").Range.AutoFilter Field:=3, Criteria1 _
:=">=" & nowD, Operator:=xlAnd, Criteria2:="<=" & maxD

End Sub


bonne journée et merci pour votre aide,
Nico
 

Pièces jointes

  • VBA Filtre.xlsm
    52.8 KB · Affichages: 3

wDog66

XLDnaute Occasionnel
Bonjour,

Pensez à utiliser l'enregistreur de macros, ça vous donne souvent les solutions

Dans votre cas, il faut passer les dates au format américain ;)
VB:
Sub Trie1()
  Dim nowD As String, maxD As String
   nowD = Format(Sheets("SET").Range("L3"), "mm/dd/yyyy")
   maxD = Format(Sheets("SET").Range("L4"), "mm/dd/yyyy")
  
  Sheets("ERP").ListObjects("Tableau2").Range.AutoFilter Field:=3, _
    Criteria1:=">=" & nowD, Operator:=xlAnd, Criteria2:="<=" & maxD
End Sub
Nota : inutile d'utiliser les SELECT :eek:

A+
 

mapomme

XLDnaute Barbatruc
Supporter XLD
Bonjour @Xxaann :), @wDog66;) ,

Ceci marche aussi en utilisant la propriété Value2 des cellules L3 et L4 :
VB:
Sub Filtrer()
   Sheets("ERP").ListObjects("Tableau2").Range.AutoFilter Field:=3, _
   Criteria1:=">=" & Sheets("SET").[L3].Value2, Operator:=xlAnd, _
   Criteria2:="<=" & Sheets("SET").[L4].Value2
End Sub
 

Pièces jointes

  • Xxaann-VBA-Filtre-Dates-v1.xlsm
    54.5 KB · Affichages: 1
Dernière édition:

Discussions similaires

Réponses
12
Affichages
741
Réponses
2
Affichages
211

Statistiques des forums

Discussions
313 770
Messages
2 102 235
Membres
108 181
dernier inscrit
Chr1sD