Controle format dans TextBox
Le
JPMonnier

Bonjour,
Excel 2000
Je bloque sur les contrôles de TextBox, je souhaiterais avec la Private Sub
suivante
Private Sub TTelF_Exit(ByVal Cancel As MSForms.ReturnBoolean)
n'autoriser qu'une valeur numérique de 10 chiffres
puis suivi d'un Setfocus si le TextBox ne rempli pas cette condition
Merci d'avance
--
Cordialement
jpmonnier-nospam@neuf.fr
Excel 2000
Je bloque sur les contrôles de TextBox, je souhaiterais avec la Private Sub
suivante
Private Sub TTelF_Exit(ByVal Cancel As MSForms.ReturnBoolean)
n'autoriser qu'une valeur numérique de 10 chiffres
puis suivi d'un Setfocus si le TextBox ne rempli pas cette condition
Merci d'avance
--
Cordialement
jpmonnier-nospam@neuf.fr
Un test sur la valeur numerique ET un test sur la longueur de la chaine :
if isnumeric(...) and len(...) then....
Etc
Merci c'est Ok, mais mon SetFocus ne fonctionne pas, il me renvoie bien mon
Msgbox de mauvaise saisie
voici mon test sans contrôler la longueur
Private Sub TTelF_Exit(ByVal Cancel As MSForms.ReturnBoolean)
If IsNumeric(TTelF.Value) = False Then
MsgBox "Num obligatoire"
TTelF.SetFocus
Exit Sub
End If
End Sub
Merci
--
Cordialement
"Caetera" news:%
Alors, peut-être ceci :
Private Sub TextBox2_Exit(ByVal Cancel As MSForms.ReturnBoolean)
If Not IsNumeric(TextBox2.Value) Or Len(TextBox2.Value) <> 10 Then
Cancel = True
TextBox2.SetFocus
End If
End Sub
Serge
"JPMonnier"
Merci
Le Cancel = True inhibe le SetFocus
Je ne passe plus au TB suivant, mais je suis obligé de resélectionner mon TB
pour reprendre la main
??
--
Cordialement
"garnote" news:%
Avec un UserForm contenant trois TextBox
(TextBox1, TextBox2 et TextBox3) et cette macro :
Private Sub TextBox1_Exit(ByVal Cancel As MSForms.ReturnBoolean)
v = TextBox1.Value
For i = 1 To Len(v)
If IsNumeric(Mid(v, i, 1)) Then k = k + 1
Next i
If k <> 10 Then
MsgBox "Nombre positif de 10 chiffres exigé."
Cancel = True
TextBox1.SetFocus
End If
End Sub
je ne peux pas sortir du TextBox1 tant qu'il ne contient pas
un nombre positif de 10 chiffres.
S'il contient un tel nombre, je peux alors sélectionner un autre
TextBox et si je tape sur "Entrée", le focus se met sur TextBox2.
Est-ce bien cela que tu veux ?
Inconvénient : Quand je ferme le UserForm, le message apparaît.
Serge
"JPMonnier"
C'est bien ce que je veux
--
Cordialement
"garnote" news:%
Il y a ceci :
'-------------------------------------
Private Sub TextBox1_BeforeUpdate(ByVal Cancel As MSForms.ReturnBoolean)
Dim X As Variant
X = Me.TextBox1
If Len(X) = 10 Then
For a = 1 To Len(X)
If Not IsNumeric(Mid(X, a, 1)) Then
Cancel = True
Me.TextBox1.SetFocus
Me.TextBox1.SelStart = a - 1
Me.TextBox1.SelLength = 1
MsgBox "Ceci n'est pas un chiffre"
Exit Sub
End If
Next
Else
MsgBox "Le textbox doit contenir 10 chiffres."
Cancel = True
Me.TextBox1.SetFocus
End If
End Sub
'-------------------------------------
"JPMonnier"
Bonjour,
Excel 2000
Je bloque sur les contrôles de TextBox, je souhaiterais avec la Private Sub
suivante
Private Sub TTelF_Exit(ByVal Cancel As MSForms.ReturnBoolean)
n'autoriser qu'une valeur numérique de 10 chiffres
puis suivi d'un Setfocus si le TextBox ne rempli pas cette condition
Merci d'avance
--
Cordialement
Le contrôle fonctionne bien mais le SetFocus n'est pas actif dans mon
TextBox, je suis obligé de le sélectionner avec la souris !!
--
Cordialement
"MichDenis" news:%
avoir reçu un caractère quelconque ! si l'usager n'a jamais
rien saisi dans le textbox, l'événement ne va pas se déclencher
si l'usager décide de cliquer dans un autre textbox.
Ajoute ceci dans ton formulaire, cela forcera l'usager à répondre
obligatoirement aux exigences de ton textbox dès qu'il aura mis
le "pied" dedans.
'---------------------
Private Sub TextBox1_Enter()
Me.TextBox1 = " ": Me.TextBox1 = ""
End Sub
'---------------------
"JPMonnier" Oe$
Bonjour MichelDenis et merci,
Le contrôle fonctionne bien mais le SetFocus n'est pas actif dans mon
TextBox, je suis obligé de le sélectionner avec la souris !!
--
Cordialement
"MichDenis" news:%
--
Cordialement
"MichDenis" news: