Recherche desesperement aide pour les comparaison de date
cs_mymic
Messages postés10Date d'inscriptionjeudi 28 mars 2002StatutMembreDernière intervention18 mai 2011
-
15 avril 2002 à 16:34
Utilisateur anonyme -
25 juin 2012 à 17:15
Je suis entrain de me prendre le choux avec un probleme pour lequel j suis persuadé qu'il y a une solution mais laquelle ?
Cela concerne les comparaison de date.
J'ai une bdd (base de donnée) sous Access 2000 avec une table ou mes date sont au format abregé.
Comme j'affiche à l'utilisateur cette table dans un MSFlexgrid j convertit l'arrivée de mon champ date avec format :
format(date1,"dd/mm/yyyy")
Maintenant j une feuille de recherche qui permet à l'utilisateur de rechercher une fiche en fonction de la date sDate2 ( avec =, > et <). Ma date sDate2 est au format "dd/mm/yyyy".
Mes requete sont de la forme :
1/ "SELECT * FROM Table1 WHERE sDate=Datevalue(#" & sDate2 & "#)
2/"SELECT * FROM Table1 WHERE sDate<Datevalue(#" & sDate2 & "#)
3/"SELECT * FROM Table1 WHERE sDate>Datevalue(#" & sDate2 & "#).
Cela fonctionne mais pas pour toute les dates. Par exemple pour les jours allant de 01 à 09 pour les annees avant l'année courante cela ne fonctionne pas.
Quelqu'un aurait t'il une solution en gardant mes formats de date et en etant sur que cela fonctionne à chaque fois.
Merci d'avance pour l'aide
%-6
A voir également:
Recherche desesperement aide pour les comparaison de date
sferrier
Messages postés31Date d'inscriptionlundi 8 avril 2002StatutMembreDernière intervention11 octobre 2002 15 avril 2002 à 16:40
bonjour,
dans les script sql les dates doivent être convertit au format américain autrement il y a inversion du mois et du jour (si c'est possible -> d'ou ton problème)
donc => ...#" & format(ladate,"mm/dd/yyyy") & "#....
Cordialement
sébastien Ferrier
Concepteur composants
alfa info
s.ferrier@alfainfo.fr
tmeg
Messages postés33Date d'inscriptionmardi 17 juin 2003StatutMembreDernière intervention12 mars 2009 15 sept. 2004 à 16:47
moi j'ai un autre probleme a cause d'acces de m.....
en ajoutant une date sql = si acces peut inverser la date pour la mettre au format anglais il le fais sinon il l'inverse pas
ex : 31/12/2004 au format francais il peut pas l'inverser il la laisse tel quel
01/02/2004 il peu l'inverser alors il le fait et la transforme au format anglais : 02/01/2004
et le meme probleme en inverse
si tu rentre une date invalide au format anglais comme par exempe le 13/31/2004 (MM/dd/yy) ben la il l'inverse au lieu de dire que la date n'est pas valide
conclusion faites gaffe aux dates fait nimporte quoi avec!
tmeg
Bonicard
Messages postés1Date d'inscriptionmardi 28 juin 2005StatutMembreDernière intervention28 juin 2005 28 juin 2005 à 20:45
salut a tous,
il y a bien longtemps que vous avez reglés ce probleme ...
mais moi c'est ajd'hui que je m'y frappe le nez
bd Access sous windows2000 Francais et VB6
dans ma bd j'ai un champs de type "date abrégé" au format jj/mm/yy
dans mon formulaire en VB6 j'ai un champs text.
les gens peuvent faire une recherche par date, ils entrent une date (au bon format) et j'ai rajouté CDate(...) lorsque je manipule ce champs text.
a quoi servent les # # dans vos exemples, jamais vu ca avant !!??
voici mon code
sql "select * from BdeT where dateV " & _
CDate(frBdeT.TxRecherche.Text) & " or dateV > " & _
CDate(frBdeT.TxRecherche.Text)
mais voila : mon resultSet est soit vide soit il contient tous les tuples de la table ... ???
comme si il n'y avait pas de clause "where" ou pas de comparaison du tout !!
merci de m'aider ... n'en peux plus !!
Bonicard
Vous n’avez pas trouvé la réponse que vous recherchez ?