Microsoft 365 Filtre fourchette de dates

JBL07

XLDnaute Occasionnel
Bonjour le Forum,

Je viens de récupérer un petit code, mis dans un module, dont j'espérais qu'il allait me permettre de filtre la colonne B9 ( les dates dans mon tableau ) depuis les 2 cellules R3/ date début et R5/date Fin

Mais ça bug :)

Un avis sur le code ou son insertion ??

Public Sub MyFilter()
Dim lngStart As Long, lngEnd As Long
lngStart = Sheets("Ecritures").Range("R3").Value 'assume this is the start date
lngEnd = Sheets("Ecritures").Range("R5").Value 'assume this is the end date
Range("B9:B50000").AutoFilter field:=1, Criteria1:=">=" & lngStart, Operator:=xlAnd, Criteria2:="<=" & lngEnd
End Sub

Je sais qu'il existe cette fonction dans les filtres de colonnes, mais je voudrais le réaliser plus facilement avec un bouton macro

Merci de votre aide
 
Solution
Bonjour,
Essayez comme ça,
VB:
Public Sub MyFilter()
    Dim lngStart As Long, lngEnd As Long, dl As Long
    dl = Range("B65536").End(xlUp).Row
    lngStart = Sheets("Ecritures").Range("R3").Value 'assume this is the start date
    lngEnd = Sheets("Ecritures").Range("R5").Value 'assume this is the end date
    Range("B9:B" & dl).AutoFilter field:=1, Criteria1:=">=" & lngStart, Operator:=xlAnd, Criteria2:="<=" & lngEnd
End Sub

Nico_J

XLDnaute Junior
Bonjour,
Essayez comme ça,
VB:
Public Sub MyFilter()
    Dim lngStart As Long, lngEnd As Long, dl As Long
    dl = Range("B65536").End(xlUp).Row
    lngStart = Sheets("Ecritures").Range("R3").Value 'assume this is the start date
    lngEnd = Sheets("Ecritures").Range("R5").Value 'assume this is the end date
    Range("B9:B" & dl).AutoFilter field:=1, Criteria1:=">=" & lngStart, Operator:=xlAnd, Criteria2:="<=" & lngEnd
End Sub
 

job75

XLDnaute Barbatruc
Re, salut Nicolas Jacquin,

Puisqu'il s'agit d'un tableau structuré :
VB:
Public Sub MyFilter()
Dim lngStart As Long, lngEnd As Long
With Sheets("Ecritures")
    lngStart = .Range("R3") 'assume this is the start date
    lngEnd = .Range("R5") 'assume this is the end date
    .ListObjects(1).Range.AutoFilter Field:=1, Criteria1:=">=" & lngStart, Operator:=xlAnd, Criteria2:="<=" & lngEnd
End With
End Sub
A+
 

JBL07

XLDnaute Occasionnel
Bonjour Nicolas
Merci, c'est juste parfait :)


..... oups j'ai oublié de valider l'envoi de mon message de remerciement !

Donc le code de Nicolas fonctionne , pouvez-vous me dire quel différence représente celui de Job75 ?

Merci à vous deux en tout cas !
 

Discussions similaires

Haut Bas