[VBA] format de date dans textbox
Fermé
antic80
Messages postés
4785
Date d'inscription
lundi 30 mai 2005
Statut
Contributeur
Dernière intervention
9 septembre 2009
-
9 janv. 2006 à 15:54
nabilone - 27 avril 2020 à 03:22
nabilone - 27 avril 2020 à 03:22
bonjour
voila j'aimerai savoir comment forcer en VBA sous excel , un utilisateur a mettre une date au format jjmmyy car si par exemple j'ecris 222 dans la textbox il me fais la conversion
je veux que l'utilisateur soit obliger de mettre par exemple 151205 qui sera converti en 15/12/2005
actuellement j'ai ca pour le formatage de la date en 15/12/2005
TXT_du = Left(TXT_du, 2) & "/" & Mid(TXT_du, 3, 2) & "/" & Right(TXT_du, 2)
merci a vous
voila j'aimerai savoir comment forcer en VBA sous excel , un utilisateur a mettre une date au format jjmmyy car si par exemple j'ecris 222 dans la textbox il me fais la conversion
je veux que l'utilisateur soit obliger de mettre par exemple 151205 qui sera converti en 15/12/2005
actuellement j'ai ca pour le formatage de la date en 15/12/2005
TXT_du = Left(TXT_du, 2) & "/" & Mid(TXT_du, 3, 2) & "/" & Right(TXT_du, 2)
merci a vous
A voir également:
- Vba textbox date format dd/mm/yyyy
- Excel vba textbox date format dd/mm/yyyy - Meilleures réponses
- Excel userform textbox date format dd/mm/yyyy - Meilleures réponses
- Format epub - Guide
- Telecharger format factory - Télécharger - Conversion & Codecs
- Format apfs - Guide
- Trouver une date de naissance gratuit - Forum Webmastering
- Hp format tool - Télécharger - Stockage
13 réponses
Salut.
5 ans après et pour ceux qui passeraient par là :
1 - Dans la Sub TextBoxToto_KeyPress de ta TextBox, on n'accepte que des chiffres
Quelque chose du genre :
If KeyAscii < 48 Or KeyAscii > 57 then KeayAscii = 0
2 - Dans la Sub TextBoxToto_BeforeUpdate on contrôle que la valeur saisie soit bien une date. Si ce n'est pas le cas, on refuse la modif (l'ancienne valeur est restaurée) et si c'est le cas on met la valeur saisie au format Date attendu.
Quelque chose du genre :
If IsDate(TextBoxToto.Text) then
TextBoxToto.Text = Format (TextBoxTotot.Text,"dd/mm/yyyy")
Else
Cancel = True
End If
Avec ce code l'utilisateur pourra saisir par exemple 2/2 et ça donnera le 02/02 de l'année courante au format 02/02/2011.
Dès lors l'extraction du mois ne peut pas donner d'erreur dès que la modif a été acceptée. De plus tu peux ajouter tout autre contrôle sur ta date (< date du jour etc...) dans la première branche du If puisque tu sais que tu travailles sur une date valide.
J'espère que ça servira à quelqu'un de passage (et que depuis 2006 tu as résolu ton problème :o).
5 ans après et pour ceux qui passeraient par là :
1 - Dans la Sub TextBoxToto_KeyPress de ta TextBox, on n'accepte que des chiffres
Quelque chose du genre :
If KeyAscii < 48 Or KeyAscii > 57 then KeayAscii = 0
2 - Dans la Sub TextBoxToto_BeforeUpdate on contrôle que la valeur saisie soit bien une date. Si ce n'est pas le cas, on refuse la modif (l'ancienne valeur est restaurée) et si c'est le cas on met la valeur saisie au format Date attendu.
Quelque chose du genre :
If IsDate(TextBoxToto.Text) then
TextBoxToto.Text = Format (TextBoxTotot.Text,"dd/mm/yyyy")
Else
Cancel = True
End If
Avec ce code l'utilisateur pourra saisir par exemple 2/2 et ça donnera le 02/02 de l'année courante au format 02/02/2011.
Dès lors l'extraction du mois ne peut pas donner d'erreur dès que la modif a été acceptée. De plus tu peux ajouter tout autre contrôle sur ta date (< date du jour etc...) dans la première branche du If puisque tu sais que tu travailles sur une date valide.
J'espère que ça servira à quelqu'un de passage (et que depuis 2006 tu as résolu ton problème :o).
20 sept. 2016 à 09:48
27 avril 2020 à 03:22