Textbox1 vba erreur date

Fermé
mickysor - Modifié par mickysor le 8/03/2013 à 13:16
eriiic Messages postés 24603 Date d'inscription mardi 11 septembre 2007 Statut Contributeur Dernière intervention 15 décembre 2024 - 9 mars 2013 à 00:56
Bonjour,
je souhaiterais que dans une textbox au format date dd.mm.yy
que si je tape un mauvais mois :exemple"10.15.13" qu'il me fasse erreur.
J'ai un code vba pour lequel ca marche très bien pour les mois mais pas les jours!
exemple si je tape "45.03.13" il ne m'affiche aucune erreur!!
j'ai oublié de préciser. il faut que la textbox accept le format xx.xx.xx
si la date n'est pas trouvée.
voici mon code vb:
Private Sub TextBox4_Change()
Dim Valeur As String
TextBox4.MaxLength = 8
Valeur = Len(TextBox4)
If Valeur = 2 Or Valeur = 5 Then
TextBox4 = TextBox4 & "."
ElseIf Valeur = 8 Then

If Not IsDate(Format(Replace(TextBox4, ".", "/"), "dd/mm/yy")) Then


MsgBox "Format incorrect"
TextBox4 = ""
Exit Sub
Else

End If

End If
End Sub




A voir également:

4 réponses

je crois que j'ai mal tapé le code vba:

mais il ne détecte pas un mauvais mois tapé exemple : 12.34.13
cette erreur n'est pas détectée
pour le jour ça ne marche pas non plus

le voici a nouveau:


Private Sub TextBox4_Change()
Dim Valeur As String

TextBox4.MaxLength = 8
Valeur = Len(TextBox4)
If Valeur = 2 Or Valeur = 5 Then
TextBox4 = TextBox4 & "."
ElseIf Valeur = 8 Then
If Not IsDate(Format(Replace(TextBox4, ".", "/"), "dd/mm/yy")) Then
MsgBox "Format incorrect"
TextBox4 = ""
Exit Sub
Else

End If

End If



End Sub
0
Le Pingou Messages postés 12242 Date d'inscription mercredi 11 août 2004 Statut Contributeur Dernière intervention 16 mars 2025 1 458
8 mars 2013 à 22:11
Bonjour,
Juste au passage, ne serait-il pas plus simple d'utiliser le contrôle [Calendar] pour entrer les dates .... dans votre formulaire (UserForm) !

0
bonsoir,
désolé mais qu'est ce que le controle calendar?
je débutes vraiment en vba et les textbox
0
je viens de trouver calendar.cette idée ne me convient pas du tout.trop encombrant et cette macro me permet de renommer une multitude d'images et donc chaque image a une date qu'il faut mettre dans une textbox.dans l'ensemble le code vba précédent est intéréssant sauf que j'ai l'impression qu'on pourrait peu être l'améliorer afin de ne pas taper pour le jour 51 le mois 13 et l'année 2080!
0
Le Pingou Messages postés 12242 Date d'inscription mercredi 11 août 2004 Statut Contributeur Dernière intervention 16 mars 2025 1 458
8 mars 2013 à 23:26
Bonjour,
Merci du retour.
Je pense que je n'ai pas compris votre problème.
Désolé, car c'est le plus simple si vous utilisez un formulaire avec zone de texte.
0
eriiic Messages postés 24603 Date d'inscription mardi 11 septembre 2007 Statut Contributeur Dernière intervention 15 décembre 2024 7 260
9 mars 2013 à 00:56
Bonsoir,

Prend le DateTimePicker Control.
Tu peux soit utiliser le calendrier, soit saisir, et tu ne peux avoir qu'une date valide.

eric
0