Userform/Masque de saisie textbox ,format 0000/00
ssassam
Messages postés
19
Statut
Membre
-
cs_Le Pivert Messages postés 8437 Statut Contributeur -
cs_Le Pivert Messages postés 8437 Statut Contributeur -
Bonjour tout le monde ,
Svp j'ai encore besoin de votre aide,
J'aimerais bien créer un masque de saisie pour mon texbox au format suivant "0000"/"00"
a noter que si j'entre par exemple 9/14 le format de sortie sera 0009/14
Pièce jointe : http://cjoint.com/14ma/DCAod68OIbo.htm
Exp :
0001/14
0007/14
0099/14
0358/14
9999/14
Merci pour votre aide
Svp j'ai encore besoin de votre aide,
J'aimerais bien créer un masque de saisie pour mon texbox au format suivant "0000"/"00"
a noter que si j'entre par exemple 9/14 le format de sortie sera 0009/14
Pièce jointe : http://cjoint.com/14ma/DCAod68OIbo.htm
Exp :
0001/14
0007/14
0099/14
0358/14
9999/14
Merci pour votre aide
A voir également:
- Masque de saisie date excel
- Liste déroulante excel - Guide
- Numero masque - Guide
- Nombre de jours entre deux dates excel - Guide
- Word et excel gratuit - Guide
- Numero masque code - Guide
3 réponses
Bonjour,
je vois que tu n'as pas eu de réponse, donc voici le code en vba
Il faut mettre ce code dans la feuille où ce situe tes cellules:
J'ai mis des commentaires pour que tu comprennes ce qui a été fait
Bonne programmation
je vois que tu n'as pas eu de réponse, donc voici le code en vba
Il faut mettre ce code dans la feuille où ce situe tes cellules:
Option Explicit
Private Sub Worksheet_SelectionChange(ByVal Target As Range)
Dim pos As Integer
Dim caract, rep As String
On Error Resume Next 'permet de travailler sur la feuille
rep = Target.Value 'valeur de la cellule
If rep = "" Then Exit Sub 'si cellule vide
pos = InStr(rep, "/") 'position du /
If pos = 2 Then
caract = Left(rep, 1) 'on récupère le 1er caractère
rep = Replace(rep, caract, "000" & caract) 'on ajoute 000 au 1er carctère
Target.Value = rep 'on actualise la cellule
ElseIf pos = 3 Then
caract = Left(rep, 2)
rep = Replace(rep, caract, "00" & caract)
Target.Value = rep
ElseIf pos = 4 Then
caract = Left(rep, 3)
rep = Replace(rep, caract, "0" & caract)
Target.Value = rep
End If
End Sub
J'ai mis des commentaires pour que tu comprennes ce qui a été fait
Bonne programmation
Merci beaucoup , cs_Le Pivert
Ton code et bien mais il lui manque le mode de formatage d'une feuille
J'ai enfin trouvé la bonne réponse
C'est un code a intégré dans une textbox
Merci
Ton code et bien mais il lui manque le mode de formatage d'une feuille
J'ai enfin trouvé la bonne réponse
C'est un code a intégré dans une textbox
Private Sub TextBox1_Change()
If Right(TextBox1, 1) = "/" Then
TextBox1 = Format(Left(TextBox1, Len(TextBox1) - 1), "0000") & "/"
End If
End Sub
Merci