TextBox

Le
Benoît
Bonjour,

je n'arrive pas à prendre en compte les valeurs rentrées par un utilisateur
dans une textBox. en effet , l'utilisateur doit rentrer une date de format
jj/mm dans une textBox
et je voudrais la recuperer dans une cellule pour declencher une macro.

pouvez vous m'aider ??

merci
Vidéos High-Tech et Jeu Vidéo
Téléchargements
Vos réponses
Gagnez chaque mois un abonnement Premium avec GNT : Inscrivez-vous !
Trier par : date / pertinence
Daniel.C
Le #19629291
Bonjour.
Utilise le code suivant :

Private Sub TextBox1_Change()
If Len(TextBox1.Text) = 5 Then
If Mid(Me.TextBox1.Text, 3, 1) = "/" And
IsNumeric(Left(Me.TextBox1.Text, 2)) And _
IsNumeric(Right(Me.TextBox1.Text, 2)) Then
If Left(Me.TextBox1.Text, 2) <= 31 And Right(Me.TextBox1.Text,
2) Then
'met(s ici le nom de la macro à appeler
Else
MsgBox "Erreur de saisie"
Me.TextBox1.Text = ""
End If
Else
MsgBox "Erreur de saisie"
Me.TextBox1.Text = ""
End If
End If
End Sub

Note que le contrôle de vraisemblance n'est qu'approximatif.
Cordialement.
Daniel

Bonjour,

je n'arrive pas à prendre en compte les valeurs rentrées par un utilisateur
dans une textBox. en effet , l'utilisateur doit rentrer une date de format
jj/mm dans une textBox
et je voudrais la recuperer dans une cellule pour declencher une macro.

pouvez vous m'aider ??

merci


Daniel.C
Le #19629391
Oups.

Private Sub TextBox1_Change()
If Len(TextBox1.Text) = 5 Then
If Mid(Me.TextBox1.Text, 3, 1) = "/" And
IsNumeric(Left(Me.TextBox1.Text, 2)) And _
IsNumeric(Right(Me.TextBox1.Text, 2)) Then
If Left(Me.TextBox1.Text, 2) <= 31 And Right(Me.TextBox1.Text,
2) <= 12 Then
'met(s ici le nom de la macro à appeler
Else
MsgBox "Erreur de saisie"
Me.TextBox1.Text = ""
End If
Else
MsgBox "Erreur de saisie"
Me.TextBox1.Text = ""
End If
End If
End Sub

Daniel

Bonjour.
Utilise le code suivant :

Private Sub TextBox1_Change()
If Len(TextBox1.Text) = 5 Then
If Mid(Me.TextBox1.Text, 3, 1) = "/" And IsNumeric(Left(Me.TextBox1.Text,
2)) And _
IsNumeric(Right(Me.TextBox1.Text, 2)) Then
If Left(Me.TextBox1.Text, 2) <= 31 And Right(Me.TextBox1.Text, 2)
Then
'met(s ici le nom de la macro à appeler
Else
MsgBox "Erreur de saisie"
Me.TextBox1.Text = ""
End If
Else
MsgBox "Erreur de saisie"
Me.TextBox1.Text = ""
End If
End If
End Sub

Note que le contrôle de vraisemblance n'est qu'approximatif.
Cordialement.
Daniel

Bonjour,

je n'arrive pas à prendre en compte les valeurs rentrées par un
utilisateur
dans une textBox. en effet , l'utilisateur doit rentrer une date de format
jj/mm dans une textBox
et je voudrais la recuperer dans une cellule pour declencher une macro.

pouvez vous m'aider ??

merci




MichDenis
Le #19629881
Bonjour Benoît,

Une autre variante :

'----------------------------
Private Sub CommandButton1_Click()
Dim S As String, T As String
Pattern = "[0-3][0-9][/][0-1][0-9]"
T = Me.TextBox1
If T <> Pattern And _
Not IsDate(Format(T & "/" & Year(Date), "dd/mm/yy")) Then
MsgBox "La saisie ne représente pas une date possible!"
Me.TextBox1 = ""
Me.TextBox1.SetFocus
End If
End Sub
'----------------------------



"Benoît"
Bonjour,

je n'arrive pas à prendre en compte les valeurs rentrées par un utilisateur
dans une textBox. en effet , l'utilisateur doit rentrer une date de format
jj/mm dans une textBox
et je voudrais la recuperer dans une cellule pour declencher une macro.

pouvez vous m'aider ??

merci
Benoît
Le #19631211
Bonsoir & merci

j'ai essayé la version à Daniel & cela marche impecc !!

pour la version à Michel, j'ai un problème de fonctionnement qui doit être
inehrent à mon UserForm

car ma TextBox commence p)ar l'instruction "Private Sub TextBox1_Change()"

et je n'arrive pas à la faire fonctionner avec cette version

en attendant, merci à vous 2

bonne soirée

"MichDenis" discussion :
Bonjour Benoît,

Une autre variante :

'----------------------------
Private Sub CommandButton1_Click()
Dim S As String, T As String
Pattern = "[0-3][0-9][/][0-1][0-9]"
T = Me.TextBox1
If T <> Pattern And _
Not IsDate(Format(T & "/" & Year(Date), "dd/mm/yy")) Then
MsgBox "La saisie ne représente pas une date possible!"
Me.TextBox1 = ""
Me.TextBox1.SetFocus
End If
End Sub
'----------------------------



"Benoît" discussion :

Bonjour,

je n'arrive pas à prendre en compte les valeurs rentrées par un
utilisateur
dans une textBox. en effet , l'utilisateur doit rentrer une date de
format
jj/mm dans une textBox
et je voudrais la recuperer dans une cellule pour declencher une macro.

pouvez vous m'aider ??

merci



MichDenis
Le #19631341
La procédure que j'ai proposé ne fonctionne pas si tu utilises l'événement
que tu mentionnes. Et je suis totalement d'accord avec toi.

J'ai utilisé un CommandButton_Clic pour vérifier si la saisie
du textbox par l'usager représentait un format de date attendu.

À toi de décider quelle approche correspond le mieux à ce que
tu désires faire.



"Benoît" #
Bonsoir & merci

j'ai essayé la version à Daniel & cela marche impecc !!

pour la version à Michel, j'ai un problème de fonctionnement qui doit être
inehrent à mon UserForm

car ma TextBox commence p)ar l'instruction "Private Sub TextBox1_Change()"

et je n'arrive pas à la faire fonctionner avec cette version

en attendant, merci à vous 2

bonne soirée

"MichDenis" discussion :
Bonjour Benoît,

Une autre variante :

'----------------------------
Private Sub CommandButton1_Click()
Dim S As String, T As String
Pattern = "[0-3][0-9][/][0-1][0-9]"
T = Me.TextBox1
If T <> Pattern And _
Not IsDate(Format(T & "/" & Year(Date), "dd/mm/yy")) Then
MsgBox "La saisie ne représente pas une date possible!"
Me.TextBox1 = ""
Me.TextBox1.SetFocus
End If
End Sub
'----------------------------



"Benoît" discussion :

Bonjour,

je n'arrive pas à prendre en compte les valeurs rentrées par un
utilisateur
dans une textBox. en effet , l'utilisateur doit rentrer une date de
format
jj/mm dans une textBox
et je voudrais la recuperer dans une cellule pour declencher une macro.

pouvez vous m'aider ??

merci



Benoît
Le #19660891
Bonjour,

j'aimerai une aide à propos de cette Textbox :
une fois la date correcte entrée, j'ai ma macro qui se déclenche & tout
marche impeccable.
il faudrait que la fois suivante, quand je rappelle la TextBox, le champ de
la date soit vide au lieu de contenir la derniere date entrée

merci d'avance

"Benoît" discussion : #
Bonsoir & merci

j'ai essayé la version à Daniel & cela marche impecc !!

pour la version à Michel, j'ai un problème de fonctionnement qui doit être
inehrent à mon UserForm

car ma TextBox commence p)ar l'instruction "Private Sub TextBox1_Change()"

et je n'arrive pas à la faire fonctionner avec cette version

en attendant, merci à vous 2

bonne soirée

"MichDenis" discussion :
Bonjour Benoît,

Une autre variante :

'----------------------------
Private Sub CommandButton1_Click()
Dim S As String, T As String
Pattern = "[0-3][0-9][/][0-1][0-9]"
T = Me.TextBox1
If T <> Pattern And _
Not IsDate(Format(T & "/" & Year(Date), "dd/mm/yy")) Then
MsgBox "La saisie ne représente pas une date possible!"
Me.TextBox1 = ""
Me.TextBox1.SetFocus
End If
End Sub
'----------------------------



"Benoît" discussion :

Bonjour,

je n'arrive pas à prendre en compte les valeurs rentrées par un
utilisateur
dans une textBox. en effet , l'utilisateur doit rentrer une date de
format
jj/mm dans une textBox
et je voudrais la recuperer dans une cellule pour declencher une macro.

pouvez vous m'aider ??

merci





MichDenis
Le #19661141
au moment où tu rappelles ton textbox, si tu veux le vider
tu dois utiliser cette ligne de code dans la procédure :

A ) si la procédure de rappel est dans le formulaire :
Me.TextBox1 = ""

B ) si la procédure est dans un module autre que le module du formulaire
Userform1.Me.TextBox1 = ""





"Benoît" #jlwtWK#
Bonjour,

j'aimerai une aide à propos de cette Textbox :
une fois la date correcte entrée, j'ai ma macro qui se déclenche & tout
marche impeccable.
il faudrait que la fois suivante, quand je rappelle la TextBox, le champ de
la date soit vide au lieu de contenir la derniere date entrée

merci d'avance

"Benoît" discussion : #
Bonsoir & merci

j'ai essayé la version à Daniel & cela marche impecc !!

pour la version à Michel, j'ai un problème de fonctionnement qui doit être
inehrent à mon UserForm

car ma TextBox commence p)ar l'instruction "Private Sub TextBox1_Change()"

et je n'arrive pas à la faire fonctionner avec cette version

en attendant, merci à vous 2

bonne soirée

"MichDenis" discussion :
Bonjour Benoît,

Une autre variante :

'----------------------------
Private Sub CommandButton1_Click()
Dim S As String, T As String
Pattern = "[0-3][0-9][/][0-1][0-9]"
T = Me.TextBox1
If T <> Pattern And _
Not IsDate(Format(T & "/" & Year(Date), "dd/mm/yy")) Then
MsgBox "La saisie ne représente pas une date possible!"
Me.TextBox1 = ""
Me.TextBox1.SetFocus
End If
End Sub
'----------------------------



"Benoît" discussion :

Bonjour,

je n'arrive pas à prendre en compte les valeurs rentrées par un
utilisateur
dans une textBox. en effet , l'utilisateur doit rentrer une date de
format
jj/mm dans une textBox
et je voudrais la recuperer dans une cellule pour declencher une macro.

pouvez vous m'aider ??

merci





Benoît
Le #19665501
Bonsoir,
je viens de tester & tout marche

merci

bonne soirée


"MichDenis" discussion : #JN2xgK#
au moment où tu rappelles ton textbox, si tu veux le vider
tu dois utiliser cette ligne de code dans la procédure :

A ) si la procédure de rappel est dans le formulaire :
Me.TextBox1 = ""

B ) si la procédure est dans un module autre que le module du formulaire
Userform1.Me.TextBox1 = ""





"Benoît" discussion :
#jlwtWK#
Bonjour,

j'aimerai une aide à propos de cette Textbox :
une fois la date correcte entrée, j'ai ma macro qui se déclenche & tout
marche impeccable.
il faudrait que la fois suivante, quand je rappelle la TextBox, le champ
de
la date soit vide au lieu de contenir la derniere date entrée

merci d'avance

"Benoît" discussion : #
Bonsoir & merci

j'ai essayé la version à Daniel & cela marche impecc !!

pour la version à Michel, j'ai un problème de fonctionnement qui doit
être
inehrent à mon UserForm

car ma TextBox commence p)ar l'instruction "Private Sub
TextBox1_Change()"

et je n'arrive pas à la faire fonctionner avec cette version

en attendant, merci à vous 2

bonne soirée

"MichDenis" discussion :
Bonjour Benoît,

Une autre variante :

'----------------------------
Private Sub CommandButton1_Click()
Dim S As String, T As String
Pattern = "[0-3][0-9][/][0-1][0-9]"
T = Me.TextBox1
If T <> Pattern And _
Not IsDate(Format(T & "/" & Year(Date), "dd/mm/yy")) Then
MsgBox "La saisie ne représente pas une date possible!"
Me.TextBox1 = ""
Me.TextBox1.SetFocus
End If
End Sub
'----------------------------



"Benoît" discussion :

Bonjour,

je n'arrive pas à prendre en compte les valeurs rentrées par un
utilisateur
dans une textBox. en effet , l'utilisateur doit rentrer une date de
format
jj/mm dans une textBox
et je voudrais la recuperer dans une cellule pour declencher une macro.

pouvez vous m'aider ??

merci







Publicité
Poster une réponse
Anonyme