Twitter iPhone pliant OnePlus 11 PS5 Disney+ Orange Livebox Windows 11

Filtrer des lignes entre 2 dates

6 réponses
Avatar
Dan
Bonjour, bonsoir...

Comment faire pour sélectionner des lignes comprises entre 2 dates



Selection.AutoFilter Field:=7, Criteria1:=">=" &
Calendrier_début_période.Value, Operator:=xlAnd _
, Criteria2:="<=" & Calendrier_fin_période.Value

J'ai essayé ce filtre mais si les valeurs n'exitent pas dans la liste, il
n'y a pas de sélection

Merci pour votre aide

Dan

6 réponses

Avatar
michdenis
Bonjour Dan,

As-tu essayé quelque chose comme ceci :

'----------------------------------
Sub SelectionEntre2Dates()

Dim Pj As Range, Dj As Range
Dim PremierJour As Date
Dim DernierJour As Date

PremierJour = DateSerial(2005, 9, 29)
DernierJour = DateSerial(2005, 10, 19)

With Worksheets("Feuil2") 'À déterminer
.Activate
With .Range("A:A") 'À déterminer
Set Pj = .Find(PremierJour, LookIn:=xlFormulas)
Set Dj = .Find(DernierJour, LookIn:=xlFormulas)
End With
End With

If Pj Is Nothing Then
MsgBox "La date de début n'existe pas."
Exit Sub
End If

If Dj Is Nothing Then
MsgBox "La date de fin n'existe pas."
Exit Sub
End If

Range(Pj, Dj).Select

Set Dj = Nothing: Set Dj = Nothing

End Sub
'----------------------------------


Si tu préfères, il y a plus court :
'---------------------------------
Sub Trouver()
On Error Resume Next
With Range("A:A")
.Range(.Find(CDate("29-9-2005"), LookIn:=xlFormulas), _
.Find(CDate("19-10-2005"), LookIn:=xlFormulas)).Select
End With
End Sub
'---------------------------------



Salutations!



"Dan" a écrit dans le message de news:
Bonjour, bonsoir...

Comment faire pour sélectionner des lignes comprises entre 2 dates



Selection.AutoFilter Field:=7, Criteria1:=">=" &
Calendrier_début_période.Value, Operator:=xlAnd _
, Criteria2:="<=" & Calendrier_fin_période.Value

J'ai essayé ce filtre mais si les valeurs n'exitent pas dans la liste, il
n'y a pas de sélection

Merci pour votre aide

Dan
Avatar
Dan
Merci Michdenis

J'ai essayé avec trouver ci-après
mais comment afficher la sélection
de toutes les lignes dont la cellule date est comprise
entre la date de début et la date de fin de période

@+
Dan...

"Dan" a écrit dans le message de news:

Bonjour, bonsoir...

Comment faire pour sélectionner des lignes comprises entre 2 dates



Selection.AutoFilter Field:=7, Criteria1:=">=" &
Calendrier_début_période.Value, Operator:=xlAnd _
, Criteria2:="<=" & Calendrier_fin_période.Value

J'ai essayé ce filtre mais si les valeurs n'exitent pas dans la liste, il
n'y a pas de sélection

Merci pour votre aide

Dan




Avatar
Dan
MichDenis,

J'ai essayé ta 1ere procédure que j'ai adaptée pour trouver une plage de
date
même si la date n'existe pas. Mais comment faire pour afficher toute les
lignes concernée
par la sélectionner ???

Private Selectionne()
Dim Pj As Range, Dj As Range
Dim PremierJour As Date
Dim DernierJour As Date

PremierJour = Calendrier_début_période.Value
DernierJour = Calendrier_fin_période.Value
recherche:
With Worksheets("Dépenses").Activate
With Range("G:G") 'À déterminer
Set Pj = .Find(PremierJour, LookIn:=xlFormulas)
Set Dj = .Find(DernierJour, LookIn:=xlFormulas)
End With
End With
If Pj Is Nothing Then
PremierJour = PremierJour + 1
GoTo recherche
End If
If Dj Is Nothing Then
DernierJour = DernierJour - 1
GoTo recherche
End If

Range(Pj, Dj).Select 'ici Excel affiche les cellules selectionnées dans la
colonne date est-il possible d'afficher les lignes ???

Set Pj = Nothing: Set Dj = Nothing

End Sub

"Dan" a écrit dans le message de news:

Bonjour, bonsoir...

Comment faire pour sélectionner des lignes comprises entre 2 dates



Selection.AutoFilter Field:=7, Criteria1:=">=" &
Calendrier_début_période.Value, Operator:=xlAnd _
, Criteria2:="<=" & Calendrier_fin_période.Value

J'ai essayé ce filtre mais si les valeurs n'exitent pas dans la liste, il
n'y a pas de sélection

Merci pour votre aide

Dan




Avatar
michdenis
Bonjour Dan,

Si ce que tu cherches à faire est un filtre automatique sur ta colonnne Date, ceci devrait fonctionner :


Selection.AutoFilter Field:=7, Criteria1:=">=" & _
Format(Calendrier_début_période.Value, "MM/d/YY"), Operator:=xlAnd _
, Criteria2:="<=" & Format(Calendrier_fin_période.Value, "MM/d/YY")
End With


Salutations!


"Dan" a écrit dans le message de news:
Merci Michdenis

J'ai essayé avec trouver ci-après
mais comment afficher la sélection
de toutes les lignes dont la cellule date est comprise
entre la date de début et la date de fin de période

@+
Dan...

"Dan" a écrit dans le message de news:

Bonjour, bonsoir...

Comment faire pour sélectionner des lignes comprises entre 2 dates



Selection.AutoFilter Field:=7, Criteria1:=">=" &
Calendrier_début_période.Value, Operator:=xlAnd _
, Criteria2:="<=" & Calendrier_fin_période.Value

J'ai essayé ce filtre mais si les valeurs n'exitent pas dans la liste, il
n'y a pas de sélection

Merci pour votre aide

Dan




Avatar
AV
Une exemple avec les dates (format indifférent) en plage Feuil1!A2:Axxx (en A1
l'étiquette de colonne)

Sub zzz()
PremJour = DateSerial(2005, 1, 10) * 1
DerJour = DateSerial(2005, 1, 15) * 1
With [Feuil1!A:A]
.AutoFilter Field:=1, Criteria1:=">=" & PremJour, Operator:=xlAnd _
, Criteria2:="<=" & DerJour
If Application.Subtotal(3, [A:A]) = 1 Then .AutoFilter
End With
End Sub

AV
Avatar
michdenis
à titre de complément, cette façon de faire est aussi indifférente aux formats des dates dans les cellules de la feuille de calcul.

Selection.AutoFilter Field:=7, Criteria1:=">=" & _
Format(Calendrier_début_période.Value, "MM/d/YY"), Operator:=xlAnd _
, Criteria2:="<=" & Format(Calendrier_fin_période.Value, "MM/d/YY")
End With


Salutations!



"Dan" a écrit dans le message de news:
Merci Michdenis

J'ai essayé avec trouver ci-après
mais comment afficher la sélection
de toutes les lignes dont la cellule date est comprise
entre la date de début et la date de fin de période

@+
Dan...

"Dan" a écrit dans le message de news:

Bonjour, bonsoir...

Comment faire pour sélectionner des lignes comprises entre 2 dates



Selection.AutoFilter Field:=7, Criteria1:=">=" &
Calendrier_début_période.Value, Operator:=xlAnd _
, Criteria2:="<=" & Calendrier_fin_période.Value

J'ai essayé ce filtre mais si les valeurs n'exitent pas dans la liste, il
n'y a pas de sélection

Merci pour votre aide

Dan