[vbaaccess]verifier une date

Fermé
med_ali Messages postés 35 Date d'inscription vendredi 30 juillet 2004 Statut Membre Dernière intervention 3 décembre 2007 - 30 juil. 2004 à 23:37
med_ali Messages postés 35 Date d'inscription vendredi 30 juillet 2004 Statut Membre Dernière intervention 3 décembre 2007 - 19 juil. 2005 à 18:56
Salut!
Dans une zone de texte dont j'ai choisit le type "texte",je veut vérifier que la date sisie par un utilisateur est correcte.
J'ai utilisée la masque de saisie 00/00/0000
le code suivant m'affiche toujours le message d'erreur même si la date est correcte.
Private Sub txtDate_Exit(Cancel As Integer)
If IsNull(txtDate) Then
Exit Sub
Else
If Not IsDate(txtDate) Then
MsgBox "Date incorrecte!!!", vbCritical + vbApplicationModal, "Zenith Soft..."
Cancel = True
txtDate = Null
Exit Sub
Else
Cancel = False
End If
End If
End Sub
Veuillez m'excuser de la longueur du message et merci de l'avoir lu

3 réponses

Salut,
je crois que votre pblème et que vous usez la Fction ISDATE avec un texte(txtdate) mais je ne suis pas sûr.
je m'excuse.
Merci.
0
med_ali Messages postés 35 Date d'inscription vendredi 30 juillet 2004 Statut Membre Dernière intervention 3 décembre 2007 7
4 août 2004 à 00:38
SalutBimo
Excusez moi de vous répondre un peu tard.
En utilisant le type " Date\Heure",ACCESS se charge de m'afficher un message d'erreur Lorsque la date est incorrecte.Ce message peut être iincompréhensible par d'autres utilisateurs.Por cela je veut afficher mon propre message d'erreur.
Merci de m'avoir répondre.
0
salut,
j'ai un ptit peu chercher sur access concernant la date et message si erreur et j'ai trouvé un expl en usant l'aide access donc j'ai créer une table qui a comme attribut un cjamp date/heure et sur propriété du champ j'ai posé le cursseur sur message si erreur mais le message que j'ai tapper n'apparit pas avec l'erreur donc j'ai reposé le cursseur sur message si erreur et j'ai appuier sur F1 et là j'ai trouvé l'expl suivant :
L'exemple suivant fait appel à la fonction DéfValidTable qui définit une validation au niveau des enregistrements pour s'assurer que la valeur du champ Date fin vient après la valeur du champ Date début.

Dim chNomTable As String, chValideSi As String
Dim chMsgSiErr As String
Dim entX As Integer

chNomTable = "Employés"
chValideSi = "[Date fin]> [Date début]"
chMsgSiErr = "Entrez une Date fin postérieure à la Date début."
entX = DéfValidTable(chNomTable, chValideSi, chMsgSiErr)

Function DéfValidTable(chNomTable As String, _
chValideSi As String, chMsgSiErr As String) _
As Integer

Dim bds As Database, dft As TableDef

Set bds = CurrentDb
Set dft = bds.TableDefs(chNomTable)
dft.ValidationRule = chValideSi
dft.ValidationText = chMsgSiErr
End Function
à+.
0
med_ali Messages postés 35 Date d'inscription vendredi 30 juillet 2004 Statut Membre Dernière intervention 3 décembre 2007 7
19 juil. 2005 à 18:56
Salut à tous
Je travail sur une application dont la saisi du texte est en arabe, mais dans certaines interfaces il y a des lettres à saisir en français. L’utilisateur devra donc changer la langue du clavier à chaque saisi de lettres françaises. C’est un travail gênant !
J’ai voulu faire une conversion en changent le code ascii de la lettre arabe à celui de la lettre française qui correspond à la même touche.
0