PRE-FORMATE UN TEXTBOX AVEC UN TEXTE DÉTERMINÉ POUR ENTRER UNE VALEUR À LA SUITE

Renfield Messages postés 17287 Date d'inscription mercredi 2 janvier 2002 Statut Modérateur Dernière intervention 27 septembre 2021 - 24 nov. 2003 à 09:45
cs_rv84 Messages postés 6 Date d'inscription mercredi 16 avril 2003 Statut Membre Dernière intervention 25 novembre 2003 - 25 nov. 2003 à 22:04
Cette discussion concerne un article du site. Pour la consulter dans son contexte d'origine, cliquez sur le lien ci-dessous.

https://codes-sources.commentcamarche.net/source/18172-pre-formate-un-textbox-avec-un-texte-determine-pour-entrer-une-valeur-a-la-suite-de-ce-texte

cs_rv84 Messages postés 6 Date d'inscription mercredi 16 avril 2003 Statut Membre Dernière intervention 25 novembre 2003
25 nov. 2003 à 22:04
Ah ben oui, ca marche impec. Merci.
Renfield Messages postés 17287 Date d'inscription mercredi 2 janvier 2002 Statut Modérateur Dernière intervention 27 septembre 2021 74
24 nov. 2003 à 23:21
il te suffirait de :

Private Sub Text1_Click()
If Text1.SelStart < 8 Then Text1.SelStart = 8
End Sub
cs_rv84 Messages postés 6 Date d'inscription mercredi 16 avril 2003 Statut Membre Dernière intervention 25 novembre 2003
24 nov. 2003 à 18:54
ah ben oui hein! j'ai dit que j'étais débutant novice. Merci infiniment. Ceci dit, j'ai encore besoin d'explication : comment faire pour que, si je clique dans le textbox, le curseur ne puisse se retrouver au milieu du mot, mais toujours à la fin plus l'espace ? Sinon, le got focus, c'est une chouette idée. Merci.
Renfield Messages postés 17287 Date d'inscription mercredi 2 janvier 2002 Statut Modérateur Dernière intervention 27 septembre 2021 74
24 nov. 2003 à 09:45
Pas mal....

Pour faire EXACTEMENT la même chose, on aurait pu écrire :

Private Sub Text1_GotFocus()
If Not Text1.Text Like "Période *" Then Text1.Text = "Période "
If Text1.SelStart < 8 Then Text1.SelStart = 8
End Sub

Private Sub Text1_KeyPress(KeyAscii As Integer)
If KeyAscii = 8 Then
If Text1.SelStart <8 Then KeyAscii 0
ElseIf KeyAscii < Asc("0") Or KeyAscii > Asc("9") Then
KeyAscii = 0
End If
End Sub

'****************************************************

bien sur, il manque encore certaines choses, comme verifier le "Format" de ce que l'on affecte par le code : si je fais Text1.text = "coucou" , ca ne respecte pas le "masque" que tu as definis.

d'autre part, tu ne bloques le presse papiers.... tu autorise le Retour Chariot (8) mais tu bloque le Copier (3) et le couper (23) et le coller(22)

j'ai fait une modification dans ton code, car il etait assez deplaisant de perdre ce que l'on tape, chaque fois que l'on clique dans le textbox...
Rejoignez-nous