je vous explique ce q je n'arrive pas a faire...
j'ai une text box dans un userform ou je dois saisir un
numero de tel. je souhaiterai, en cours de frappe, qu'il
mette le numero dans un format de telephone standard,
c'est-a-dire 01.23.45.67.89
donc quand je tape le chiffre 2, la valeur de la textbox
devient 01.2
quand je tape le 4, ca devient 01.23.4
quand je tape le 6, ca devient 01.23.45.6
et quand je tape le 8, ca devient 01.23.45.67.8
Cette action est irreversible, confirmez la suppression du commentaire ?
Signaler le commentaire
Veuillez sélectionner un problème
Nudité
Violence
Harcèlement
Fraude
Vente illégale
Discours haineux
Terrorisme
Autre
JpPradier
Bonjour Albator V
Avec cette macro :
Private Sub TextBox1_Change() nbchar = Len(Me.TextBox1.Text) If nbchar = 2 Or nbchar = 5 Or nbchar = 8 Or nbchar = 11 Then Me.TextBox1.Text = Me.TextBox1.Text & "." End If End Sub
j-p
Bonjour Albator V
Avec cette macro :
Private Sub TextBox1_Change()
nbchar = Len(Me.TextBox1.Text)
If nbchar = 2 Or nbchar = 5 Or nbchar = 8 Or nbchar = 11 Then
Me.TextBox1.Text = Me.TextBox1.Text & "."
End If
End Sub
Private Sub TextBox1_Change() nbchar = Len(Me.TextBox1.Text) If nbchar = 2 Or nbchar = 5 Or nbchar = 8 Or nbchar = 11 Then Me.TextBox1.Text = Me.TextBox1.Text & "." End If End Sub
j-p
PMO
Bonjour,
Ci-dessous un code qui devrait solutionner votre problème. (il faut un UserForm avec une TextBox dont la propriété (Name) est "TextBox1") Code à copier dans votre UserForm.
'******************** Option Explicit Public Cancel As Boolean '__________________________________________ Private Sub TextBox1_Change() Dim A$ If Cancel Then Cancel = False Exit Sub End If Call FormatTeleph A$ = TextBox1.Text If Len(A$) > 14 Then Cancel = True TextBox1.Text = Mid(A$, 1, Len(A$) - 1) Exit Sub End If End Sub '__________________________________________ Sub FormatTeleph() Dim C As Object Dim A$ Dim var On Error GoTo Erreur Set C = TextBox1 A$ = CStr(C.Text) If Not IsNumeric(Right(A$, 1)) Then Cancel = True C.Text = Mid(A$, 1, Len(A$) - 1) Exit Sub End If If Len(A$) = 2 Then Cancel = True C.Text = C.Text & "." Exit Sub End If If Len(A$) > 3 Then var = Right(A$, 2) If var > 1 Then Cancel = True C.Text = C.Text & "." Exit Sub Else Exit Sub End If End If Erreur: End Sub '***********************
PMO Patrick Morange
bonjour,
je vous explique ce q je n'arrive pas a faire... j'ai une text box dans un userform ou je dois saisir un numero de tel. je souhaiterai, en cours de frappe, qu'il mette le numero dans un format de telephone standard, c'est-a-dire 01.23.45.67.89 donc quand je tape le chiffre 2, la valeur de la textbox devient 01.2 quand je tape le 4, ca devient 01.23.4 quand je tape le 6, ca devient 01.23.45.6 et quand je tape le 8, ca devient 01.23.45.67.8
merci davance
Bonjour,
Ci-dessous un code qui devrait solutionner votre problème.
(il faut un UserForm avec une TextBox dont la propriété (Name) est "TextBox1")
Code à copier dans votre UserForm.
'********************
Option Explicit
Public Cancel As Boolean
'__________________________________________
Private Sub TextBox1_Change()
Dim A$
If Cancel Then
Cancel = False
Exit Sub
End If
Call FormatTeleph
A$ = TextBox1.Text
If Len(A$) > 14 Then
Cancel = True
TextBox1.Text = Mid(A$, 1, Len(A$) - 1)
Exit Sub
End If
End Sub
'__________________________________________
Sub FormatTeleph()
Dim C As Object
Dim A$
Dim var
On Error GoTo Erreur
Set C = TextBox1
A$ = CStr(C.Text)
If Not IsNumeric(Right(A$, 1)) Then
Cancel = True
C.Text = Mid(A$, 1, Len(A$) - 1)
Exit Sub
End If
If Len(A$) = 2 Then
Cancel = True
C.Text = C.Text & "."
Exit Sub
End If
If Len(A$) > 3 Then
var = Right(A$, 2)
If var > 1 Then
Cancel = True
C.Text = C.Text & "."
Exit Sub
Else
Exit Sub
End If
End If
Erreur:
End Sub
'***********************
PMO
Patrick Morange
bonjour,
je vous explique ce q je n'arrive pas a faire...
j'ai une text box dans un userform ou je dois saisir un
numero de tel. je souhaiterai, en cours de frappe, qu'il
mette le numero dans un format de telephone standard,
c'est-a-dire 01.23.45.67.89
donc quand je tape le chiffre 2, la valeur de la textbox
devient 01.2
quand je tape le 4, ca devient 01.23.4
quand je tape le 6, ca devient 01.23.45.6
et quand je tape le 8, ca devient 01.23.45.67.8
Ci-dessous un code qui devrait solutionner votre problème. (il faut un UserForm avec une TextBox dont la propriété (Name) est "TextBox1") Code à copier dans votre UserForm.
'******************** Option Explicit Public Cancel As Boolean '__________________________________________ Private Sub TextBox1_Change() Dim A$ If Cancel Then Cancel = False Exit Sub End If Call FormatTeleph A$ = TextBox1.Text If Len(A$) > 14 Then Cancel = True TextBox1.Text = Mid(A$, 1, Len(A$) - 1) Exit Sub End If End Sub '__________________________________________ Sub FormatTeleph() Dim C As Object Dim A$ Dim var On Error GoTo Erreur Set C = TextBox1 A$ = CStr(C.Text) If Not IsNumeric(Right(A$, 1)) Then Cancel = True C.Text = Mid(A$, 1, Len(A$) - 1) Exit Sub End If If Len(A$) = 2 Then Cancel = True C.Text = C.Text & "." Exit Sub End If If Len(A$) > 3 Then var = Right(A$, 2) If var > 1 Then Cancel = True C.Text = C.Text & "." Exit Sub Else Exit Sub End If End If Erreur: End Sub '***********************
PMO Patrick Morange
bonjour,
je vous explique ce q je n'arrive pas a faire... j'ai une text box dans un userform ou je dois saisir un numero de tel. je souhaiterai, en cours de frappe, qu'il mette le numero dans un format de telephone standard, c'est-a-dire 01.23.45.67.89 donc quand je tape le chiffre 2, la valeur de la textbox devient 01.2 quand je tape le 4, ca devient 01.23.4 quand je tape le 6, ca devient 01.23.45.6 et quand je tape le 8, ca devient 01.23.45.67.8
merci davance
Albaor V
c'est impeccable... par contre je ne peux pas effacer ma text box... comment faire ?^
-----Message d'origine----- Bonjour Albator V
Avec cette macro :
Private Sub TextBox1_Change() nbchar = Len(Me.TextBox1.Text) If nbchar = 2 Or nbchar = 5 Or nbchar = 8 Or nbchar = 11 Then
Me.TextBox1.Text = Me.TextBox1.Text & "." End If End Sub
j-p .
c'est impeccable...
par contre je ne peux pas effacer ma text box...
comment faire ?^
-----Message d'origine-----
Bonjour Albator V
Avec cette macro :
Private Sub TextBox1_Change()
nbchar = Len(Me.TextBox1.Text)
If nbchar = 2 Or nbchar = 5 Or nbchar = 8 Or nbchar = 11
Then
Me.TextBox1.Text = Me.TextBox1.Text & "."
End If
End Sub