OVH Cloud OVH Cloud

Flitre : selection de date

4 réponses
Avatar
Sirbeaujeu
Je n'arrive pas à filtrer des données de facon automatique

Voci mon code mais ca ne marche pas

Private Sub CommandButton6_Click()
date1 = TextBox1.Value
Selection.AutoFilter Field:=5, Criteria1:="date1", Operator:=xlAnd
Range("A1").Select
Label13.Caption = " - a " & Range("a1").Value & " présenter"
End Sub



Merci d'avcance

4 réponses

Avatar
michdenis
Bonjour Sirbeaujeu,

Si tu veux faire un filtre automatique sur une date précise, utilise
quelque chose comme l'exemple présenté :

'-----------------------------
Private Sub CommandButton6_Click()
Dim Date1 As Date

If isdate(TextBox1.Value) then
Date1 = CDate(TextBox1.Value")
else
Msgbox "La date saisie n'est pas reconnue par excel"
exit sub
end if

' Nom feuille à adapter et la plage de cellules.
' de même que le Field

With Worksheets("Feuil1")
With .Range("A1:A" & .Range("A65536").End(xlUp).Row)
.AutoFilter Field:=1, Criteria1:=">" & _
(Date1 * 1) - 1, Operator:=xlAnd, _
Criteria2:="<" & (Date1 * 1) + 1
End With
End With

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


Salutations!




"Sirbeaujeu" a écrit dans le message de news: 4436d704$0$29195$
Je n'arrive pas à filtrer des données de facon automatique

Voci mon code mais ca ne marche pas

Private Sub CommandButton6_Click()
date1 = TextBox1.Value
Selection.AutoFilter Field:=5, Criteria1:="date1", Operator:=xlAnd
Range("A1").Select
Label13.Caption = " - a " & Range("a1").Value & " présenter"
End Sub



Merci d'avcance
Avatar
JB
Bonjour,

Il faut inverser le jour et le mois:

http://cjoint.com/?eihB4PBehv

Sub filtre1b()
Range("C6").Select
Selection.AutoFilter
Selection.AutoFilter Field:=5, Criteria1:=InverseDate(Range("B1"))
End Sub

Function InverseDate(d)
InverseDate = Month(CVDate(d)) & "/" & Day(CVDate(d)) & "/" &
Year(CVDate(d))
End Function

Cordialement JB
Avatar
michdenis
Bonjour JB,

Si je modifie le format des dates de la plage de cellules,
est-ce que ta proposition tient toujours la route ?


Sub filtre1b()
Range("C6").Select
Selection.AutoFilter
Selection.AutoFilter Field:=5, Criteria1:=InverseDate(Range("B1"))
End Sub

Function InverseDate(d)
InverseDate = Month(CVDate(d)) & "/" & Day(CVDate(d)) & "/" & Year(CVDate(d))
End Function


Salutations!




"JB" a écrit dans le message de news:
Bonjour,

Il faut inverser le jour et le mois:

http://cjoint.com/?eihB4PBehv

Sub filtre1b()
Range("C6").Select
Selection.AutoFilter
Selection.AutoFilter Field:=5, Criteria1:=InverseDate(Range("B1"))
End Sub

Function InverseDate(d)
InverseDate = Month(CVDate(d)) & "/" & Day(CVDate(d)) & "/" &
Year(CVDate(d))
End Function

Cordialement JB
Avatar
Sirbeaujeu
Excellent merci a vous deux


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

Bonjour JB,

Si je modifie le format des dates de la plage de cellules,
est-ce que ta proposition tient toujours la route ?


Sub filtre1b()
Range("C6").Select
Selection.AutoFilter
Selection.AutoFilter Field:=5, Criteria1:=InverseDate(Range("B1"))
End Sub

Function InverseDate(d)
InverseDate = Month(CVDate(d)) & "/" & Day(CVDate(d)) & "/" &
Year(CVDate(d))
End Function


Salutations!




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

Bonjour,

Il faut inverser le jour et le mois:

http://cjoint.com/?eihB4PBehv

Sub filtre1b()
Range("C6").Select
Selection.AutoFilter
Selection.AutoFilter Field:=5, Criteria1:=InverseDate(Range("B1"))
End Sub

Function InverseDate(d)
InverseDate = Month(CVDate(d)) & "/" & Day(CVDate(d)) & "/" &
Year(CVDate(d))
End Function

Cordialement JB