Comment effacer une saisi dans une textbox formule automatique
Bonjour,
voilà j'ai une textbox avec ce code ci dessous, cela permet d'afficher en tapant 01022016 que cela se change automatiquement en 01/02/2016.
mais quand on se trompe de date par exemple je ne peu effacer que les chiffres et se bloque sur les /
par exemple je tape "01" le "/" s'affiche automatiquement mais si je me suis trompé de jour en faisant retour arrière des touches du clavier cela se bloque sur le "/" est ne l'efface pas, y à t'il une petite ligne de code me permettant se retour arrière????
merci
voici le bout de code
Private Sub TextBox3_Change()
' Cette procèdure permet de mettre automatiquement une date au format 00/00/0000 dans une textbox
Dim valeur As Byte
TextBox3.MaxLength = 10 'nb caractères maxi autorisé dans le textbox
valeur = Len(TextBox3)
If valeur = 2 Or valeur = 5 Then TextBox3 = TextBox3 & "/"
' cette procédure permet de renseigner la cellule B8 en fonction de la donnée
' écrite dans le formulaire à la parti DATE
Sheets("BASE de DONNEE").Select
[B8] = TextBox3
End Sub
voilà j'ai une textbox avec ce code ci dessous, cela permet d'afficher en tapant 01022016 que cela se change automatiquement en 01/02/2016.
mais quand on se trompe de date par exemple je ne peu effacer que les chiffres et se bloque sur les /
par exemple je tape "01" le "/" s'affiche automatiquement mais si je me suis trompé de jour en faisant retour arrière des touches du clavier cela se bloque sur le "/" est ne l'efface pas, y à t'il une petite ligne de code me permettant se retour arrière????
merci
voici le bout de code
Private Sub TextBox3_Change()
' Cette procèdure permet de mettre automatiquement une date au format 00/00/0000 dans une textbox
Dim valeur As Byte
TextBox3.MaxLength = 10 'nb caractères maxi autorisé dans le textbox
valeur = Len(TextBox3)
If valeur = 2 Or valeur = 5 Then TextBox3 = TextBox3 & "/"
' cette procédure permet de renseigner la cellule B8 en fonction de la donnée
' écrite dans le formulaire à la parti DATE
Sheets("BASE de DONNEE").Select
[B8] = TextBox3
End Sub
2 réponses
-
Bonjour
Essayez ceci, les "/" se mettent automatiquement en fin de saisie de la date complète. la date dans la textbox apparaît sous la forme "jj/mm/aa" mais est bien restituée au format "jj/mm/aaaa" dans la cellule B8 si la colonne est à ce format.Private Sub TextBox3_Change() ' Cette procèdure permet de mettre automatiquement une date au format 00/00/0000 dans une textbox Dim valeur As Byte TextBox3.MaxLength = 10 'nb caractères maxi autorisé dans le textbox valeur = Len(TextBox3) ' cette procédure permet de renseigner la cellule B8 en fonction de la donnée ' écrite dans le formulaire à la parti DATE NbSlash = Len(TextBox3) - Len(Replace(TextBox3, "/", "")) If NbSlash < 2 Then If valeur = 8 Then TextBox3 = Left(TextBox3, 2) & "/" & Mid(TextBox3, 3, 2) & "/" & Right(TextBox3, 2) End If Sheets("BASE de DONNEE").Select [B8] = Format(TextBox3, "m/d/YYYY") End Sub
Cdlt -
merci du coup de main, votre code fonctionne très bien.