OVH Cloud OVH Cloud

CALENDRIER : 31 février 2003

14 réponses
Avatar
jpbataille
Bonsoir,


Comment faire pour éviter de saisir une date comme 31/02/03 ou plus
couramment 31/09/03 ?





Remerciements anticipés,
Jean-Paul

10 réponses

1 2
Avatar
3stone
Salut,

"JP Bataille"

Comment faire pour éviter de saisir une date comme 31/02/03 ou plus
couramment 31/09/03 ?





Heu... si tu veux éviter... ben... ne la saisis pas !?


Je ne comprends pas le sens de la question ;-)


--
A+
Pierre (3stone) Access MVP
--------------------------------------
Une pour tous, tous pour une ;-)
http://users.skynet.be/mpfa/charte.htm
--------------------------------------

Avatar
Guy DETIENNE
Salut ;O)

Il est vrai que la question n'est pas très explicite. De là à répondre de
ne pas la saisir...
Je suppose que la saisie n'est pas faite que par lui. Donc il voudrait
éviter toute erreur d'encodage.

Donc à la sortie du champ, il faudrait vérifier l'exactitude de la date
entrée.

Voici une fonction qui pourrait t'aider.
Elle retourne Vrai si la date est correcte.

Public Function fCheckDate(ByVal pDate As String) As Boolean

On Error GoTo GestionErreur

fCheckDate = CDate(pDate)

Exit Function

GestionErreur:
'si type incompatible
If Err.Number = 13 Then fCheckDate = False

End Function


On pourrait tester ainsi:
MsgBox fCheckDate("30/02/2003")

La boîte de message devrait affichier "Faux"


Guy

--
__________________________________
Tchao.net: L'informatique à votre dimension
www.tchao.net
Pour toute réponse, retirer le .nospam de l'adresse mail
ou cliquez ici http://cerbermail.com/?6nQ9U2fpkD

"3stone" a écrit dans le message de
news:3fce055c$0$5482$
Salut,

"JP Bataille"

Comment faire pour éviter de saisir une date comme 31/02/03 ou plus
couramment 31/09/03 ?





Heu... si tu veux éviter... ben... ne la saisis pas !?


Je ne comprends pas le sens de la question ;-)


--
A+
Pierre (3stone) Access MVP
--------------------------------------
Une pour tous, tous pour une ;-)
http://users.skynet.be/mpfa/charte.htm
--------------------------------------







Avatar
3stone
Salut,

Comment faire pour éviter de saisir une date comme 31/02/03 ou plus
couramment 31/09/03 ?




Oui... à la relecture... 31 avril... ;-)))


Lorsque tu encode cela, tu veux éviter le message Access ?

Lorsque le champ est défini comme champ date,
il me semble que c'est incontournable...
L'erreur "remonte" jusque dans la saisie dans le formulaire.

Mais, j'ai déjà contourné cela, en utilisant un moyen... spécial !

- Ne pas placer le champ date sur le formulaire
- Y placer un textbox indépendant qui recoit et transmet
sa valeur au champ date (qui doit être dans la source...)

Cela permet de contrôler la saisie dans l'avant mise à jour
par du code... If IsDate(textbox) then...


--
A+
Pierre (3stone) Access MVP
--------------------------------------
Une pour tous, tous pour une ;-)
http://users.skynet.be/mpfa/charte.htm
--------------------------------------


Avatar
Guy DETIENNE
Salut ;O)

Bien entendu, ma fonction ne prévalait que si le format de l'année est en 4
positions.
En effet, si on entre 31/11/03, le système convertira en 03/11/1931 (c'est
le cas chez moi).
Mais entre nous, qu'est ce qui t'empêche de modifier l'année de la date pour
qu'elle soit en 4 positions avant de la checker avec la fonction ?

Je comprends mal ton malheur... Je n'ai jamais rencontré de réels problèmes
avec les dates, hormis dans des instructions SQL.

Bon courage.

Guy
--
__________________________________
Tchao.net: L'informatique à votre dimension
www.tchao.net
Pour toute réponse, retirer le .nospam de l'adresse mail
ou cliquez ici http://cerbermail.com/?6nQ9U2fpkD

"François Fuchs" a écrit dans le message de
news:
mer. 03 déc. 2003 17:19:29 Guy DETIENNE a écrit dans le message de news
<news: :

Donc à la sortie du champ, il faudrait vérifier l'exactitude de la date
entrée.

Voici une fonction qui pourrait t'aider.
Elle retourne Vrai si la date est correcte.


La fonction est correcte, sauf qu'il y a un gros problème.

Si tu entres 31/11/03, avant même que ta fonction soit appelée, Access
aura

converti la date en 03/11/31 (2031 ou 1931 ? faut voir avec le
paramètrage

de windows). Que du bonheur. Un client m'a pourri la vie avec ça pas plus
tard que lundi dernier. J'ai eu du mal a lui faire entendre (dans le sens,
je

crie plus fort que toi) qu'il n'y avait que 30 jours en novembre tellement
il

a cru trouver la faille pour me les briser menu. C'est une vielle appli.
Maintenant, je ne passe _que_ par des champs texte.

La gestion des dates avec Access, c'est de la merde en pôt. D'autant plus
si

tu bosses, par exemple, avec les québecquois sur une applie partagée avec
la

France et des collaborateurs de culture différente sur chaque site.

Désolé d'être un peu froid mais le coup des dates sous Access, ça a le
dont

me faire sortir de mes gonds.

--
!



Avatar
Anor
Bonjour,

JP Bataille :
| Bonsoir,
| Comment faire pour éviter de saisir une date comme 31/02/03 ou plus
| couramment 31/09/03 ?
| Remerciements anticipés,
| Jean-Paul

Un jour, un contributeur de ce groupe m'a suggéré ceci,
lors de l'ouverture d'un état :

Dim DateParametre As String
Do Until IsDate(DateParametre) = True
DateParametre = Inputbox("Veuillez saisir une date SVP : ", "Date du Rapport", Date)
Loop
DateConvertie = DateParametre

Donc à adapter sur un événement avant mise à jour d'une zone de texte
au lieu d"une "inputbox".

On doit retomber sur ce qu'a proposé 3stone à peu de choses près...
Au fait, c'était pas 3stone mon suggestionneur ?
;-))

--
à+
Arnaud
--------------------------------------------------
Avant toute chose : http://users.skynet.be/mpfa/
Access Memorandum - http://memoaccess.free.fr
## Réponses souhaitées sur ce forum, merci. ##
--------------------------------------------------
Avatar
3stone
Salut Anor,

"Anor"
On doit retomber sur ce qu'a proposé 3stone à peu de choses près...
Au fait, c'était pas 3stone mon suggestionneur ?



Le 6 août 2002, non ?

;-))


--
A+
Pierre (3stone) Access MVP
--------------------------------------
Une pour tous, tous pour une ;-)
http://users.skynet.be/mpfa/charte.htm
--------------------------------------

Avatar
Anor
Salut 3stone,

"3stone"
| Salut Anor,
|
| "Anor"
|| On doit retomber sur ce qu'a proposé 3stone à peu de choses près...
|| Au fait, c'était pas 3stone mon suggestionneur ?
|
|
| Le 6 août 2002, non ?
|
| ;-))

Après vérification, c'est cela même : Quelle mémoire !
;-)
--
à+
Arnaud
--------------------------------------------------
Avant toute chose : http://users.skynet.be/mpfa/
Access Memorandum - http://memoaccess.free.fr
## Réponses souhaitées sur ce forum, merci. ##
--------------------------------------------------
Avatar
jpbataille
(JP Bataille) wrote in message news:...
Bonsoir,


Comment faire pour éviter de saisir une date comme 31/02/03 ou plus
couramment 31/09/03 ?





Remerciements anticipés,
Jean-Paul


JE PRECISE :

Mes collaboratrices me signalent qu'il est possible de saisir des
dates aussi bizarres que 31 février 2003 ( 31/02/03) ou le 31
septembre 2003 ; sans qu'il y ait un blocage de ces sources d'erreurs.

JPB

Avatar
Raymond [mvp]
Bien sûr si ton champ n'est pas déclaré date dans la table et si tu n'as pas
de format dans le formulaire. la saisie est considérée alpha.

--
@+
Raymond Access MVP
http://access.seneque.free.fr/
http://access2003.free.fr/
http://users.skynet.be/mpfa/ pour une meilleure
efficacité de tes interventions sur MPFA


"JP Bataille" a écrit dans le message de
news:
JE PRECISE :

Mes collaboratrices me signalent qu'il est possible de saisir des
dates aussi bizarres que 31 février 2003 ( 31/02/03) ou le 31
septembre 2003 ; sans qu'il y ait un blocage de ces sources d'erreurs.

JPB


Avatar
3stone
Salut,

"JP Bataille"

JE PRECISE :

Mes collaboratrices me signalent qu'il est possible de saisir des
dates aussi bizarres que 31 février 2003 ( 31/02/03) ou le 31
septembre 2003 ; sans qu'il y ait un blocage de ces sources d'erreurs.




J'avais dis, je cite :

""
Lorsque le champ est défini comme champ date,
il me semble que c'est incontournable...
L'erreur "remonte" jusque dans la saisie dans le formulaire.
""

ceci en croyant que tu parlait de l'erreur donné par Access
sur ce genre de saisie... (comme quoi, les questions vagues ;-))


Donc, en fait, tu n'avais pas de message d'erreur...
et tu voulais empêcher que l'on sache saisir des "concetés".

Comme le dit Raymond, cette saisie est *impossible*
SI le champ est bien déclaré "Date/heure"


Le seul problème parfois rencontré, est que Access déduit
_par lui même_ que le 3/14/2003 ne peut être que le 14/3/2003


--
A+
Pierre (3stone) Access MVP
--------------------------------------
Une pour tous, tous pour une ;-)
http://users.skynet.be/mpfa/charte.htm
--------------------------------------

1 2