Tri avancé sur date ne fonctionne pas en VBA

INVIMA

XLDnaute Nouveau
Bonjour à tous,

après plusieurs recherche sur les forums, je trouve pas la solution à mon problème.

Je doit faire un tri pour chaque "machine" et "valve 0" pour le jour précédent (sachant que le jour commence à 6h00).

Mon filtre élaboré fonctionne en manuel, mais quand je le lance en VBA (module 4), ca ne fonctionne pas (il fonctionne quand je ne prends pas la date).

Je suis à cours d'imagination, J'espère que quelqu'un pourra m'aider.

Mon fichier est trop gros pour être joint, mais voici à quoi cela ressemble:

Données (de A à Q):
DT Sample Machine Type Valve
26/08/2014 1:00 47 JB1FMM1 1 0
26/08/2014 1:00 47 JB1FMM1 1 1
26/08/2014 1:00 47 JB1FMM1 1 2

Mes conditions des tris (en T1:W2):
DT DT Valve Machine
>=27/08/2014 6:00 <28/08/2014 6:00 0 JB1FMM1

Ma macro:
DerLigne = Cells(Cells.Rows.Count, "Q").End(xlUp).Row
Range("A1:Q" & DerLigne).AdvancedFilter Action:=xlFilterCopy, CriteriaRange:= _
Range("T1:W2"), CopyToRange:=Range("AA2:AQ2"), Unique:=False


Merci,


INVIMA
 

pascal_bidouille

XLDnaute Junior
Re : Tri avancé sur date ne fonctionne pas en VBA

Salut,

Ton pb vient du fait que bizarrement quand tu lance la fonction en VBA il faut que la date dans tes critères soit au format excel (ex 41878,25 = 27/08/2014 06:00) et non au format lisible.

pour cela je propose que tu saisisses ta date de critère dans une case par exemple Z1
puis dans ta case T1 tu mets
Code:
=">=" & Z1

Tu fais cela pour tes 2 dates critères et cela devrait rouler ...:)
 

INVIMA

XLDnaute Nouveau
Re : Tri avancé sur date ne fonctionne pas en VBA

Bonjour,

Merci pour la réponse.

Je fais actuellement comme ceci pour la pose des conditions du tri:

'Mise des conditions du tri
'Je reprends les titres des colonnes
Range("T1").Value = "=A1"
Range("U1").Value = "=A1"
Range("V1").Value = "=E1"
Range("W1").Value = "=C1"
'Je mets les conditions
Range("T2").Value = ">=" & Date - 1 & " " & "6:00"
Range("U2").Value = "<" & Date & " " & "6:00"
Range("V2").Value = 0
Range("W2").Value = " JB1FMM1"

Je ne peux malheureusement pas me permettre d'introduire les conditions manuellement, tout doit passer par macro...

Si vous voyez une erreur dans ma façon de faire ou même la solution, n'hésitez pas ;-)

Merci,


Marc
 

Staple1600

XLDnaute Barbatruc
Re : Tri avancé sur date ne fonctionne pas en VBA

Bonjour à tous


Pour infos
Pour filtrer des dates, je les convertis toujours en Long au préalable

Voir ce petit test en guise de piste pour la résolution de ta question
Code:
Sub test()
Dim a As Date, b As Date, c
a = "27/08/2014 06:00"
b = Split(a)(0)
c = CLng(b) + 0.25
MsgBox Format(c, "dd/mm/yyyy hh:mm")
End Sub

Tu peux renseigner tes bornes de ton filtre directement dans VBA (dans des variables) sans les stocker dans des cellules.
(si tu utilises un filtre automatique en lieu et place du filtre élaboré)

PS: Si tu joignais un petit fichier exemple allégé et anonymisé, il serait plus aisé de t'aider.
 
Dernière édition:

Staple1600

XLDnaute Barbatruc
Re : Tri avancé sur date ne fonctionne pas en VBA

Re

Une question:
As-tu essayé ceci sur ton PC (comme mon message précédent t'invitait à le faire à partir de l'exemple test) ?
Je viens de le faire sur le mien, et les résultats du filtre avancé semblent bon, non ?

Code:
'Mise des conditions du tri
Range("T1").Value = "=A1"
Range("U1").Value = "=A1"
Range("V1").Value = "=E1"
Range("W1").Value = "=C1"
Range("T2").Value = ">=" & CLng(Date - 1) + 0.25
Range("U2").Value = "<" & CLng(Date) + 0.25
Range("V2").Value = 0
Range("W2").Value = "    JB1FMM1"
 

INVIMA

XLDnaute Nouveau
Re : Tri avancé sur date ne fonctionne pas en VBA

Bonjour,

merci pour votre aide, mais je viens de tester, il ne tient toujours pas compte de la date lorsque je lance le tri avance via la macro.

Si vous avez d'autres idées...

Merci d'avance.


INVIMA
 

INVIMA

XLDnaute Nouveau
Re : Tri avancé sur date ne fonctionne pas en VBA

Bonjour tout le monde,

je me permets de relancer le sujet car je n'ai toujours pas trouvé de solution à mon problème.

N'hésitez pas à me demander si vous avez besoin de plus d'informations.

Merci d'avance,


INVIMA
 

Discussions similaires

Statistiques des forums

Discussions
312 211
Messages
2 086 296
Membres
103 171
dernier inscrit
clemm