OVH Cloud OVH Cloud

bug de gestion des dates

5 réponses
Avatar
Akazed
Bonjour,

Sous Access j'ai pass=E9 l'apr=E8s midi identifier l'erreur=20
suivante :

voila mon code : Table1.FindFirst "date_rdv =3D#" &=20
Criteredate.Value & "#"

Je veux trouver le premier enreg dans table1 dont la date=20
est =E9gale =E0 Criteredate. Pb =E7=E0 marche tant que le jour de=20
Criteredate est sup=E9rieur =E0 12 : dans ce cas l=E0, la date=20
est bien prise au format fran=E7ais. Mais si le jour de=20
Criteredate est inf=E9rieur =E0 13, cet andouille d'access=20
croit que c'est une date US ! exemple, il prend=20
08/04/2005 pour le 4 aout !
Comment r=E9soudre ce pb ?
Merci

5 réponses

Avatar
Eric
Bonjour,

Essaies :
rs.FindFirst "date_rdv=" & Format(Criteredate.Value, "#mm/dd/yy#")

A+
Eric

Akazed a écrit :
Bonjour,

Sous Access j'ai passé l'après midi identifier l'erreur
suivante :

voila mon code : Table1.FindFirst "date_rdv =#" &
Criteredate.Value & "#"

Je veux trouver le premier enreg dans table1 dont la date
est égale à Criteredate. Pb çà marche tant que le jour de
Criteredate est supérieur à 12 : dans ce cas là, la date
est bien prise au format français. Mais si le jour de
Criteredate est inférieur à 13, cet andouille d'access
croit que c'est une date US ! exemple, il prend
08/04/2005 pour le 4 aout !
Comment résoudre ce pb ?
Merci



Avatar
Emmanuel DURAND
>Comment résoudre ce pb ?



...se prendre la tête avec les petites merdouilles qui traînent dans les
langages MS.
Avatar
Jacques
Bonjour,
Akazed wrote:
Bonjour,

Sous Access j'ai passé l'après midi identifier l'erreur
suivante :

voila mon code : Table1.FindFirst "date_rdv =#" &
Criteredate.Value & "#"

Je veux trouver le premier enreg dans table1 dont la date
est égale à Criteredate. Pb çà marche tant que le jour de
Criteredate est supérieur à 12 : dans ce cas là, la date
est bien prise au format français. Mais si le jour de
Criteredate est inférieur à 13, cet andouille d'access
croit que c'est une date US ! exemple, il prend
08/04/2005 pour le 4 aout !
Comment résoudre ce pb ?
Merci



De mémoire, dans les requêtes SQL, les dates doivent être au format US
(mm/jj/aa). Vous pouvez utiliser quelque chose du genre :

Table1.FindFirst "date_rdv =" Date_US(Criteredate.Value)

' Conversion de date du format national (jj/mm/aaaa) au format US
'(mm/dd/yyyy) Nécessaire pour les requêtes SQL
----------------------------------------------------------------------------
Public Function Date_US(dt As Date) As String
Dim jj, mm, aa As Integer

On Error GoTo Date_US_Err
jj = Day(dt)
mm = Month(dt)
aa = Year(dt)
Date_US = "#" & mm & "/" & jj & "/" & aa & "#"
Exit Function

Date_US_Err:
[Gestion d'erreur]
End Function

--
Cordialement,

Jacques.
Avatar
Guy DETIENNE
Réponse facile que voilà !
Il n'y a pas que des 'merdouilles' mais aussi beaucoup de méconnaissances
des utilisateurs...

Guy

"Emmanuel DURAND @wanadoo.fr>" <edurand<NOSPAM> a écrit dans le message de
news:
>Comment résoudre ce pb ?

...se prendre la tête avec les petites merdouilles qui traînent dans les
langages MS.




Avatar
Akazed
merci beaucoup les gars, avec ces infos, je devrais m'en
sortir !


-----Message d'origine-----
Bonjour,
Akazed wrote:
Bonjour,

Sous Access j'ai passé l'après midi identifier




l'erreur
suivante :

voila mon code : Table1.FindFirst "date_rdv =#" &
Criteredate.Value & "#"

Je veux trouver le premier enreg dans table1 dont la




date
est égale à Criteredate. Pb çà marche tant que le jour




de
Criteredate est supérieur à 12 : dans ce cas là, la




date
est bien prise au format français. Mais si le jour de
Criteredate est inférieur à 13, cet andouille d'access
croit que c'est une date US ! exemple, il prend
08/04/2005 pour le 4 aout !
Comment résoudre ce pb ?
Merci



De mémoire, dans les requêtes SQL, les dates doivent


être au format US
(mm/jj/aa). Vous pouvez utiliser quelque chose du genre :

Table1.FindFirst "date_rdv =" Date_US(Criteredate.Value)

' Conversion de date du format national (jj/mm/aaaa) au


format US
'(mm/dd/yyyy) Nécessaire pour les requêtes SQL
---------------------------------------------------------


-------------------
Public Function Date_US(dt As Date) As String
Dim jj, mm, aa As Integer

On Error GoTo Date_US_Err
jj = Day(dt)
mm = Month(dt)
aa = Year(dt)
Date_US = "#" & mm & "/" & jj & "/" & aa & "#"
Exit Function

Date_US_Err:
[Gestion d'erreur]
End Function

--
Cordialement,

Jacques.
.