format date dans un textbox

pat40 pat40
86 contributions
Membre depuis le 04/03/2011
Envoyé le 31/12/2011 à 15:45


Bonjour,
Et mes meilleurs voeux pour cette nouvelle 2012

dans un textbox "datedem" je souhaite mettre un format date du type 31/12/2011

j'ai placé le code=
Private Sub datedem_Change()
datedem.Value = Format(datedem.Value, "dd/mm/yyyy")
End Sub

Dès que je tape le premier chiffre de la date dans le texbox de l'userfom la date suivante s'inscrit "31/12/1899"

merci pour votre aide


Mytå_Qc Mytå_Qc
30 contributions
Membre depuis le 06/08/2010
Envoyé le 31/12/2011 à 18:23 Modifié par Mytå_Qc


Bonjour,

Remplace par
Private Sub datedem_Exit(ByVal Cancel As MSForms.ReturnBoolean)
datedem.Value = Format(datedem.Value, "dd/mm/yyyy")
End Sub

Mytå



Claude40 Claude40
1 533 contributions
Membre depuis le 24/03/2010
Envoyé le 31/12/2011 à 22:00


Bonsoir,
Un petit prétexte pour t'adresser mes meilleurs voeux:
si Exit ne marche pas (cela arrive parfois), essayer AfterUpdate.
Sur mon jeu d'essais Exit ne marche pas , mais AfterUpdate, oui.
Bonne année 2012.
Un bon exposé du problème, c'est déjà un grand pas vers la solution. Dans la mesure du possible, mes solutions sont testées, sur mon système actuel (W10 Pro version 1909), mais peuvent ne pas fonctionner sur tous les Pc
pat40 pat40
86 contributions
Membre depuis le 04/03/2011
Envoyé le 01/01/2012 à 17:13


Bonjour,

mes meilleurs voeux pour 2012
Merci pour vos réponses. La solution proposée par Myta_Qc ne fonctionne pas par contre celle de Claude40 fonctionne.
J'avoue que j'aimerai bien comprendre pourquoi mon code ou celui de Myta_Qc ne fonctionne pas. Alors sans abuser de votre temps si vous pouviez m'expliquer les "mystères" du code vba...
Merci encore

Mytå_Qc Mytå_Qc
30 contributions
Membre depuis le 06/08/2010
Envoyé le 02/01/2012 à 01:07 Modifié par Mytå_Qc


Bonjour,

Essaye avec le code suivant, les séparateurs sont positionnés automatiquement

Private Sub TextBox1_Change()
Dim Valeur As Byte
TextBox1.MaxLength = 10 'nb caractères maxi autorisé dans le textbox
Valeur = Len(TextBox1)
If Valeur = 2 Or Valeur = 5 Then TextBox1 = TextBox1 & "/"
End Sub


Mytå

pat40 pat40
86 contributions
Membre depuis le 04/03/2011
Envoyé le 02/01/2012 à 06:54


Bonjour,

Merci, effectivement ce code fonctionne bien...

Discussion trop ancienne

Cette discussion a été automatiquement fermée car elle n'a plus reçue de nouveau message depuis trop longtemps.

Nous vous suggérons de créer un nouveau message

« Retour sur la liste des messages de ce forum