Bonsoir,
J'ai écrit la macro suivante pour qu'en cas d'erreur un message s'affiche et
que le focus retourne sur la Textbox - Les messages s'affichent mais le focus
ne retourne pas sur la TextBox - Pourquoi ?
Merci de votre aide
Jean-Paul
Private Sub TextBox1_Exit(ByVal Cancel As MSForms.ReturnBoolean)
If TextBox1.TextLength < 10 Then
MsgBox ("Le siren doit être composé de 10 chiffres")
Me.TextBox1.SetFocus
End If
If Not IsNumeric(Me.TextBox1.Text) Then
MsgBox "Chiffres exclusivement"
Me.TextBox1.SetFocus
End If
End Sub
Bonsoir,
J'ai écrit la macro suivante pour qu'en cas d'erreur un message s'affiche et
que le focus retourne sur la Textbox - Les messages s'affichent mais le focus
ne retourne pas sur la TextBox - Pourquoi ?
Merci de votre aide
Jean-Paul
Private Sub TextBox1_Exit(ByVal Cancel As MSForms.ReturnBoolean)
If TextBox1.TextLength < 10 Then
MsgBox ("Le siren doit être composé de 10 chiffres")
Me.TextBox1.SetFocus
End If
If Not IsNumeric(Me.TextBox1.Text) Then
MsgBox "Chiffres exclusivement"
Me.TextBox1.SetFocus
End If
End Sub
Bonsoir,
J'ai écrit la macro suivante pour qu'en cas d'erreur un message s'affiche et
que le focus retourne sur la Textbox - Les messages s'affichent mais le focus
ne retourne pas sur la TextBox - Pourquoi ?
Merci de votre aide
Jean-Paul
Private Sub TextBox1_Exit(ByVal Cancel As MSForms.ReturnBoolean)
If TextBox1.TextLength < 10 Then
MsgBox ("Le siren doit être composé de 10 chiffres")
Me.TextBox1.SetFocus
End If
If Not IsNumeric(Me.TextBox1.Text) Then
MsgBox "Chiffres exclusivement"
Me.TextBox1.SetFocus
End If
End Sub
Bonsoir Jean-Paul,
En ce qui concerne l'obligation de saisir des chiffres, il vaut mieux que
tu utilises l'événement KeyPress... Ainsi l'erreur ne pourra pas se faire
car le message interviendra dès la saisie de la première lettre. On ajoute
un beep pour réveiller ! ;)
Private Sub TextBox1_KeyPress(ByVal KeyAscii As MSForms.ReturnInteger)
If InStr("0123456789", Chr(KeyAscii)) = 0 Then
KeyAscii = 0
Beep
MsgBox "Chiffres exclusivement!"
End If
End Sub
Par contre, pour le SetFocus avec l'événement Exit, je ne vois pas trop
comment on peut faire. A la place du SetFocus, tu peux mettre
Cancel= True
mais dans ce cas tu ne pourras pas sortir de la boîte. Donc, à suivre..
Pour l'instant il est trop tard ! ;)
Circé
http://faqword.free.fr
jepac a présenté l'énoncé suivant :Bonsoir,
J'ai écrit la macro suivante pour qu'en cas d'erreur un message s'affiche
et que le focus retourne sur la Textbox - Les messages s'affichent mais
le focus ne retourne pas sur la TextBox - Pourquoi ?
Merci de votre aide
Jean-Paul
Private Sub TextBox1_Exit(ByVal Cancel As MSForms.ReturnBoolean)
If TextBox1.TextLength < 10 Then
MsgBox ("Le siren doit être composé de 10 chiffres")
Me.TextBox1.SetFocus
End If
If Not IsNumeric(Me.TextBox1.Text) Then
MsgBox "Chiffres exclusivement"
Me.TextBox1.SetFocus
End If
End Sub
Bonsoir Jean-Paul,
En ce qui concerne l'obligation de saisir des chiffres, il vaut mieux que
tu utilises l'événement KeyPress... Ainsi l'erreur ne pourra pas se faire
car le message interviendra dès la saisie de la première lettre. On ajoute
un beep pour réveiller ! ;)
Private Sub TextBox1_KeyPress(ByVal KeyAscii As MSForms.ReturnInteger)
If InStr("0123456789", Chr(KeyAscii)) = 0 Then
KeyAscii = 0
Beep
MsgBox "Chiffres exclusivement!"
End If
End Sub
Par contre, pour le SetFocus avec l'événement Exit, je ne vois pas trop
comment on peut faire. A la place du SetFocus, tu peux mettre
Cancel= True
mais dans ce cas tu ne pourras pas sortir de la boîte. Donc, à suivre..
Pour l'instant il est trop tard ! ;)
Circé
http://faqword.free.fr
jepac a présenté l'énoncé suivant :
Bonsoir,
J'ai écrit la macro suivante pour qu'en cas d'erreur un message s'affiche
et que le focus retourne sur la Textbox - Les messages s'affichent mais
le focus ne retourne pas sur la TextBox - Pourquoi ?
Merci de votre aide
Jean-Paul
Private Sub TextBox1_Exit(ByVal Cancel As MSForms.ReturnBoolean)
If TextBox1.TextLength < 10 Then
MsgBox ("Le siren doit être composé de 10 chiffres")
Me.TextBox1.SetFocus
End If
If Not IsNumeric(Me.TextBox1.Text) Then
MsgBox "Chiffres exclusivement"
Me.TextBox1.SetFocus
End If
End Sub
Bonsoir Jean-Paul,
En ce qui concerne l'obligation de saisir des chiffres, il vaut mieux que
tu utilises l'événement KeyPress... Ainsi l'erreur ne pourra pas se faire
car le message interviendra dès la saisie de la première lettre. On ajoute
un beep pour réveiller ! ;)
Private Sub TextBox1_KeyPress(ByVal KeyAscii As MSForms.ReturnInteger)
If InStr("0123456789", Chr(KeyAscii)) = 0 Then
KeyAscii = 0
Beep
MsgBox "Chiffres exclusivement!"
End If
End Sub
Par contre, pour le SetFocus avec l'événement Exit, je ne vois pas trop
comment on peut faire. A la place du SetFocus, tu peux mettre
Cancel= True
mais dans ce cas tu ne pourras pas sortir de la boîte. Donc, à suivre..
Pour l'instant il est trop tard ! ;)
Circé
http://faqword.free.fr
jepac a présenté l'énoncé suivant :Bonsoir,
J'ai écrit la macro suivante pour qu'en cas d'erreur un message s'affiche
et que le focus retourne sur la Textbox - Les messages s'affichent mais
le focus ne retourne pas sur la TextBox - Pourquoi ?
Merci de votre aide
Jean-Paul
Private Sub TextBox1_Exit(ByVal Cancel As MSForms.ReturnBoolean)
If TextBox1.TextLength < 10 Then
MsgBox ("Le siren doit être composé de 10 chiffres")
Me.TextBox1.SetFocus
End If
If Not IsNumeric(Me.TextBox1.Text) Then
MsgBox "Chiffres exclusivement"
Me.TextBox1.SetFocus
End If
End Sub
Bonjour,
Pour le SetFocus, essaie de donner le focus à un autre contrôle et ensuite à
ton Textbox.
--
Heureux-oli
http://heureuxoli.developpez.com/
----------------------------------------------------------------------------------
"Circé" a écrit dans le message de news:Bonsoir Jean-Paul,
En ce qui concerne l'obligation de saisir des chiffres, il vaut mieux que
tu utilises l'événement KeyPress... Ainsi l'erreur ne pourra pas se faire
car le message interviendra dès la saisie de la première lettre. On ajoute
un beep pour réveiller ! ;)
Private Sub TextBox1_KeyPress(ByVal KeyAscii As MSForms.ReturnInteger)
If InStr("0123456789", Chr(KeyAscii)) = 0 Then
KeyAscii = 0
Beep
MsgBox "Chiffres exclusivement!"
End If
End Sub
Par contre, pour le SetFocus avec l'événement Exit, je ne vois pas trop
comment on peut faire. A la place du SetFocus, tu peux mettre
Cancel= True
mais dans ce cas tu ne pourras pas sortir de la boîte. Donc, à suivre..
Pour l'instant il est trop tard ! ;)
Circé
http://faqword.free.fr
jepac a présenté l'énoncé suivant :Bonsoir,
J'ai écrit la macro suivante pour qu'en cas d'erreur un message s'affiche
et que le focus retourne sur la Textbox - Les messages s'affichent mais
le focus ne retourne pas sur la TextBox - Pourquoi ?
Merci de votre aide
Jean-Paul
Private Sub TextBox1_Exit(ByVal Cancel As MSForms.ReturnBoolean)
If TextBox1.TextLength < 10 Then
MsgBox ("Le siren doit être composé de 10 chiffres")
Me.TextBox1.SetFocus
End If
If Not IsNumeric(Me.TextBox1.Text) Then
MsgBox "Chiffres exclusivement"
Me.TextBox1.SetFocus
End If
End Sub
Bonjour,
Pour le SetFocus, essaie de donner le focus à un autre contrôle et ensuite à
ton Textbox.
--
Heureux-oli
http://heureuxoli.developpez.com/
----------------------------------------------------------------------------------
"Circé" <circe@aea.gr> a écrit dans le message de news:
mn.48207d815aaf15f9.54897@aea.gr...
Bonsoir Jean-Paul,
En ce qui concerne l'obligation de saisir des chiffres, il vaut mieux que
tu utilises l'événement KeyPress... Ainsi l'erreur ne pourra pas se faire
car le message interviendra dès la saisie de la première lettre. On ajoute
un beep pour réveiller ! ;)
Private Sub TextBox1_KeyPress(ByVal KeyAscii As MSForms.ReturnInteger)
If InStr("0123456789", Chr(KeyAscii)) = 0 Then
KeyAscii = 0
Beep
MsgBox "Chiffres exclusivement!"
End If
End Sub
Par contre, pour le SetFocus avec l'événement Exit, je ne vois pas trop
comment on peut faire. A la place du SetFocus, tu peux mettre
Cancel= True
mais dans ce cas tu ne pourras pas sortir de la boîte. Donc, à suivre..
Pour l'instant il est trop tard ! ;)
Circé
http://faqword.free.fr
jepac a présenté l'énoncé suivant :
Bonsoir,
J'ai écrit la macro suivante pour qu'en cas d'erreur un message s'affiche
et que le focus retourne sur la Textbox - Les messages s'affichent mais
le focus ne retourne pas sur la TextBox - Pourquoi ?
Merci de votre aide
Jean-Paul
Private Sub TextBox1_Exit(ByVal Cancel As MSForms.ReturnBoolean)
If TextBox1.TextLength < 10 Then
MsgBox ("Le siren doit être composé de 10 chiffres")
Me.TextBox1.SetFocus
End If
If Not IsNumeric(Me.TextBox1.Text) Then
MsgBox "Chiffres exclusivement"
Me.TextBox1.SetFocus
End If
End Sub
Bonjour,
Pour le SetFocus, essaie de donner le focus à un autre contrôle et ensuite à
ton Textbox.
--
Heureux-oli
http://heureuxoli.developpez.com/
----------------------------------------------------------------------------------
"Circé" a écrit dans le message de news:Bonsoir Jean-Paul,
En ce qui concerne l'obligation de saisir des chiffres, il vaut mieux que
tu utilises l'événement KeyPress... Ainsi l'erreur ne pourra pas se faire
car le message interviendra dès la saisie de la première lettre. On ajoute
un beep pour réveiller ! ;)
Private Sub TextBox1_KeyPress(ByVal KeyAscii As MSForms.ReturnInteger)
If InStr("0123456789", Chr(KeyAscii)) = 0 Then
KeyAscii = 0
Beep
MsgBox "Chiffres exclusivement!"
End If
End Sub
Par contre, pour le SetFocus avec l'événement Exit, je ne vois pas trop
comment on peut faire. A la place du SetFocus, tu peux mettre
Cancel= True
mais dans ce cas tu ne pourras pas sortir de la boîte. Donc, à suivre..
Pour l'instant il est trop tard ! ;)
Circé
http://faqword.free.fr
jepac a présenté l'énoncé suivant :Bonsoir,
J'ai écrit la macro suivante pour qu'en cas d'erreur un message s'affiche
et que le focus retourne sur la Textbox - Les messages s'affichent mais
le focus ne retourne pas sur la TextBox - Pourquoi ?
Merci de votre aide
Jean-Paul
Private Sub TextBox1_Exit(ByVal Cancel As MSForms.ReturnBoolean)
If TextBox1.TextLength < 10 Then
MsgBox ("Le siren doit être composé de 10 chiffres")
Me.TextBox1.SetFocus
End If
If Not IsNumeric(Me.TextBox1.Text) Then
MsgBox "Chiffres exclusivement"
Me.TextBox1.SetFocus
End If
End Sub
Bonsoir et merci à vous deux ( et bonne année par la même occasion)
Pour Circé : j'ai une erreur de compilation au niveau de (KeyAscii).
Pour heureux-oli : rien à faire, je peux donner le focus à un autre
contrôle
sans problème mais lorsuqu'à la suite j'essaie de redonner le focus au
contrôle sortant le focus reste au contrôle désign' en premier, voilà
comment
Private Sub TextBox1_Exit(ByVal Cancel As MSForms.ReturnBoolean)
If TextBox1.TextLength < 10 Then
MsgBox ("Le siren doit être composé de 10 chiffres")
Me.TextBox2.SetFocus
Me.TextBox1.SetFocus
Exit Sub
Else.........
Merci
Jean-PaulBonjour,
Pour le SetFocus, essaie de donner le focus à un autre contrôle et
ensuite à
ton Textbox.
--
Heureux-oli
http://heureuxoli.developpez.com/
----------------------------------------------------------------------------------
"Circé" a écrit dans le message de news:Bonsoir Jean-Paul,
En ce qui concerne l'obligation de saisir des chiffres, il vaut mieux
que
tu utilises l'événement KeyPress... Ainsi l'erreur ne pourra pas se
faire
car le message interviendra dès la saisie de la première lettre. On
ajoute
un beep pour réveiller ! ;)
Private Sub TextBox1_KeyPress(ByVal KeyAscii As MSForms.ReturnInteger)
If InStr("0123456789", Chr(KeyAscii)) = 0 Then
KeyAscii = 0
Beep
MsgBox "Chiffres exclusivement!"
End If
End Sub
Par contre, pour le SetFocus avec l'événement Exit, je ne vois pas trop
comment on peut faire. A la place du SetFocus, tu peux mettre
Cancel= True
mais dans ce cas tu ne pourras pas sortir de la boîte. Donc, à suivre..
Pour l'instant il est trop tard ! ;)
Circé
http://faqword.free.fr
jepac a présenté l'énoncé suivant :Bonsoir,
J'ai écrit la macro suivante pour qu'en cas d'erreur un message
s'affiche
et que le focus retourne sur la Textbox - Les messages s'affichent
mais
le focus ne retourne pas sur la TextBox - Pourquoi ?
Merci de votre aide
Jean-Paul
Private Sub TextBox1_Exit(ByVal Cancel As MSForms.ReturnBoolean)
If TextBox1.TextLength < 10 Then
MsgBox ("Le siren doit être composé de 10 chiffres")
Me.TextBox1.SetFocus
End If
If Not IsNumeric(Me.TextBox1.Text) Then
MsgBox "Chiffres exclusivement"
Me.TextBox1.SetFocus
End If
End Sub
Bonsoir et merci à vous deux ( et bonne année par la même occasion)
Pour Circé : j'ai une erreur de compilation au niveau de (KeyAscii).
Pour heureux-oli : rien à faire, je peux donner le focus à un autre
contrôle
sans problème mais lorsuqu'à la suite j'essaie de redonner le focus au
contrôle sortant le focus reste au contrôle désign' en premier, voilà
comment
Private Sub TextBox1_Exit(ByVal Cancel As MSForms.ReturnBoolean)
If TextBox1.TextLength < 10 Then
MsgBox ("Le siren doit être composé de 10 chiffres")
Me.TextBox2.SetFocus
Me.TextBox1.SetFocus
Exit Sub
Else.........
Merci
Jean-Paul
Bonjour,
Pour le SetFocus, essaie de donner le focus à un autre contrôle et
ensuite à
ton Textbox.
--
Heureux-oli
http://heureuxoli.developpez.com/
----------------------------------------------------------------------------------
"Circé" <circe@aea.gr> a écrit dans le message de news:
mn.48207d815aaf15f9.54897@aea.gr...
Bonsoir Jean-Paul,
En ce qui concerne l'obligation de saisir des chiffres, il vaut mieux
que
tu utilises l'événement KeyPress... Ainsi l'erreur ne pourra pas se
faire
car le message interviendra dès la saisie de la première lettre. On
ajoute
un beep pour réveiller ! ;)
Private Sub TextBox1_KeyPress(ByVal KeyAscii As MSForms.ReturnInteger)
If InStr("0123456789", Chr(KeyAscii)) = 0 Then
KeyAscii = 0
Beep
MsgBox "Chiffres exclusivement!"
End If
End Sub
Par contre, pour le SetFocus avec l'événement Exit, je ne vois pas trop
comment on peut faire. A la place du SetFocus, tu peux mettre
Cancel= True
mais dans ce cas tu ne pourras pas sortir de la boîte. Donc, à suivre..
Pour l'instant il est trop tard ! ;)
Circé
http://faqword.free.fr
jepac a présenté l'énoncé suivant :
Bonsoir,
J'ai écrit la macro suivante pour qu'en cas d'erreur un message
s'affiche
et que le focus retourne sur la Textbox - Les messages s'affichent
mais
le focus ne retourne pas sur la TextBox - Pourquoi ?
Merci de votre aide
Jean-Paul
Private Sub TextBox1_Exit(ByVal Cancel As MSForms.ReturnBoolean)
If TextBox1.TextLength < 10 Then
MsgBox ("Le siren doit être composé de 10 chiffres")
Me.TextBox1.SetFocus
End If
If Not IsNumeric(Me.TextBox1.Text) Then
MsgBox "Chiffres exclusivement"
Me.TextBox1.SetFocus
End If
End Sub
Bonsoir et merci à vous deux ( et bonne année par la même occasion)
Pour Circé : j'ai une erreur de compilation au niveau de (KeyAscii).
Pour heureux-oli : rien à faire, je peux donner le focus à un autre
contrôle
sans problème mais lorsuqu'à la suite j'essaie de redonner le focus au
contrôle sortant le focus reste au contrôle désign' en premier, voilà
comment
Private Sub TextBox1_Exit(ByVal Cancel As MSForms.ReturnBoolean)
If TextBox1.TextLength < 10 Then
MsgBox ("Le siren doit être composé de 10 chiffres")
Me.TextBox2.SetFocus
Me.TextBox1.SetFocus
Exit Sub
Else.........
Merci
Jean-PaulBonjour,
Pour le SetFocus, essaie de donner le focus à un autre contrôle et
ensuite à
ton Textbox.
--
Heureux-oli
http://heureuxoli.developpez.com/
----------------------------------------------------------------------------------
"Circé" a écrit dans le message de news:Bonsoir Jean-Paul,
En ce qui concerne l'obligation de saisir des chiffres, il vaut mieux
que
tu utilises l'événement KeyPress... Ainsi l'erreur ne pourra pas se
faire
car le message interviendra dès la saisie de la première lettre. On
ajoute
un beep pour réveiller ! ;)
Private Sub TextBox1_KeyPress(ByVal KeyAscii As MSForms.ReturnInteger)
If InStr("0123456789", Chr(KeyAscii)) = 0 Then
KeyAscii = 0
Beep
MsgBox "Chiffres exclusivement!"
End If
End Sub
Par contre, pour le SetFocus avec l'événement Exit, je ne vois pas trop
comment on peut faire. A la place du SetFocus, tu peux mettre
Cancel= True
mais dans ce cas tu ne pourras pas sortir de la boîte. Donc, à suivre..
Pour l'instant il est trop tard ! ;)
Circé
http://faqword.free.fr
jepac a présenté l'énoncé suivant :Bonsoir,
J'ai écrit la macro suivante pour qu'en cas d'erreur un message
s'affiche
et que le focus retourne sur la Textbox - Les messages s'affichent
mais
le focus ne retourne pas sur la TextBox - Pourquoi ?
Merci de votre aide
Jean-Paul
Private Sub TextBox1_Exit(ByVal Cancel As MSForms.ReturnBoolean)
If TextBox1.TextLength < 10 Then
MsgBox ("Le siren doit être composé de 10 chiffres")
Me.TextBox1.SetFocus
End If
If Not IsNumeric(Me.TextBox1.Text) Then
MsgBox "Chiffres exclusivement"
Me.TextBox1.SetFocus
End If
End Sub
Essaie au lieu de OnExit d'utiliser AfterUpdate.
J'utilise peu de OnExit, si je ne change rien, elle s'exécute quand même,
alors que AfterUpdate ne s'exécute que si il y a changement.
--
Heureux-oli
http://heureuxoli.developpez.com/
----------------------------------------------------------------------------------
"jepac" a écrit dans le message de news:Bonsoir et merci à vous deux ( et bonne année par la même occasion)
Pour Circé : j'ai une erreur de compilation au niveau de (KeyAscii).
Pour heureux-oli : rien à faire, je peux donner le focus à un autre
contrôle
sans problème mais lorsuqu'à la suite j'essaie de redonner le focus au
contrôle sortant le focus reste au contrôle désign' en premier, voilà
comment
Private Sub TextBox1_Exit(ByVal Cancel As MSForms.ReturnBoolean)
If TextBox1.TextLength < 10 Then
MsgBox ("Le siren doit être composé de 10 chiffres")
Me.TextBox2.SetFocus
Me.TextBox1.SetFocus
Exit Sub
Else.........
Merci
Jean-PaulBonjour,
Pour le SetFocus, essaie de donner le focus à un autre contrôle et
ensuite à
ton Textbox.
--
Heureux-oli
http://heureuxoli.developpez.com/
----------------------------------------------------------------------------------
"Circé" a écrit dans le message de news:Bonsoir Jean-Paul,
En ce qui concerne l'obligation de saisir des chiffres, il vaut mieux
que
tu utilises l'événement KeyPress... Ainsi l'erreur ne pourra pas se
faire
car le message interviendra dès la saisie de la première lettre. On
ajoute
un beep pour réveiller ! ;)
Private Sub TextBox1_KeyPress(ByVal KeyAscii As MSForms.ReturnInteger)
If InStr("0123456789", Chr(KeyAscii)) = 0 Then
KeyAscii = 0
Beep
MsgBox "Chiffres exclusivement!"
End If
End Sub
Par contre, pour le SetFocus avec l'événement Exit, je ne vois pas trop
comment on peut faire. A la place du SetFocus, tu peux mettre
Cancel= True
mais dans ce cas tu ne pourras pas sortir de la boîte. Donc, à suivre..
Pour l'instant il est trop tard ! ;)
Circé
http://faqword.free.fr
jepac a présenté l'énoncé suivant :Bonsoir,
J'ai écrit la macro suivante pour qu'en cas d'erreur un message
s'affiche
et que le focus retourne sur la Textbox - Les messages s'affichent
mais
le focus ne retourne pas sur la TextBox - Pourquoi ?
Merci de votre aide
Jean-Paul
Private Sub TextBox1_Exit(ByVal Cancel As MSForms.ReturnBoolean)
If TextBox1.TextLength < 10 Then
MsgBox ("Le siren doit être composé de 10 chiffres")
Me.TextBox1.SetFocus
End If
If Not IsNumeric(Me.TextBox1.Text) Then
MsgBox "Chiffres exclusivement"
Me.TextBox1.SetFocus
End If
End Sub
Essaie au lieu de OnExit d'utiliser AfterUpdate.
J'utilise peu de OnExit, si je ne change rien, elle s'exécute quand même,
alors que AfterUpdate ne s'exécute que si il y a changement.
--
Heureux-oli
http://heureuxoli.developpez.com/
----------------------------------------------------------------------------------
"jepac" <jepac@discussions.microsoft.com> a écrit dans le message de news:
E36DDF9B-0AB3-416A-8DCE-57A842C438C5@microsoft.com...
Bonsoir et merci à vous deux ( et bonne année par la même occasion)
Pour Circé : j'ai une erreur de compilation au niveau de (KeyAscii).
Pour heureux-oli : rien à faire, je peux donner le focus à un autre
contrôle
sans problème mais lorsuqu'à la suite j'essaie de redonner le focus au
contrôle sortant le focus reste au contrôle désign' en premier, voilà
comment
Private Sub TextBox1_Exit(ByVal Cancel As MSForms.ReturnBoolean)
If TextBox1.TextLength < 10 Then
MsgBox ("Le siren doit être composé de 10 chiffres")
Me.TextBox2.SetFocus
Me.TextBox1.SetFocus
Exit Sub
Else.........
Merci
Jean-Paul
Bonjour,
Pour le SetFocus, essaie de donner le focus à un autre contrôle et
ensuite à
ton Textbox.
--
Heureux-oli
http://heureuxoli.developpez.com/
----------------------------------------------------------------------------------
"Circé" <circe@aea.gr> a écrit dans le message de news:
mn.48207d815aaf15f9.54897@aea.gr...
Bonsoir Jean-Paul,
En ce qui concerne l'obligation de saisir des chiffres, il vaut mieux
que
tu utilises l'événement KeyPress... Ainsi l'erreur ne pourra pas se
faire
car le message interviendra dès la saisie de la première lettre. On
ajoute
un beep pour réveiller ! ;)
Private Sub TextBox1_KeyPress(ByVal KeyAscii As MSForms.ReturnInteger)
If InStr("0123456789", Chr(KeyAscii)) = 0 Then
KeyAscii = 0
Beep
MsgBox "Chiffres exclusivement!"
End If
End Sub
Par contre, pour le SetFocus avec l'événement Exit, je ne vois pas trop
comment on peut faire. A la place du SetFocus, tu peux mettre
Cancel= True
mais dans ce cas tu ne pourras pas sortir de la boîte. Donc, à suivre..
Pour l'instant il est trop tard ! ;)
Circé
http://faqword.free.fr
jepac a présenté l'énoncé suivant :
Bonsoir,
J'ai écrit la macro suivante pour qu'en cas d'erreur un message
s'affiche
et que le focus retourne sur la Textbox - Les messages s'affichent
mais
le focus ne retourne pas sur la TextBox - Pourquoi ?
Merci de votre aide
Jean-Paul
Private Sub TextBox1_Exit(ByVal Cancel As MSForms.ReturnBoolean)
If TextBox1.TextLength < 10 Then
MsgBox ("Le siren doit être composé de 10 chiffres")
Me.TextBox1.SetFocus
End If
If Not IsNumeric(Me.TextBox1.Text) Then
MsgBox "Chiffres exclusivement"
Me.TextBox1.SetFocus
End If
End Sub
Essaie au lieu de OnExit d'utiliser AfterUpdate.
J'utilise peu de OnExit, si je ne change rien, elle s'exécute quand même,
alors que AfterUpdate ne s'exécute que si il y a changement.
--
Heureux-oli
http://heureuxoli.developpez.com/
----------------------------------------------------------------------------------
"jepac" a écrit dans le message de news:Bonsoir et merci à vous deux ( et bonne année par la même occasion)
Pour Circé : j'ai une erreur de compilation au niveau de (KeyAscii).
Pour heureux-oli : rien à faire, je peux donner le focus à un autre
contrôle
sans problème mais lorsuqu'à la suite j'essaie de redonner le focus au
contrôle sortant le focus reste au contrôle désign' en premier, voilà
comment
Private Sub TextBox1_Exit(ByVal Cancel As MSForms.ReturnBoolean)
If TextBox1.TextLength < 10 Then
MsgBox ("Le siren doit être composé de 10 chiffres")
Me.TextBox2.SetFocus
Me.TextBox1.SetFocus
Exit Sub
Else.........
Merci
Jean-PaulBonjour,
Pour le SetFocus, essaie de donner le focus à un autre contrôle et
ensuite à
ton Textbox.
--
Heureux-oli
http://heureuxoli.developpez.com/
----------------------------------------------------------------------------------
"Circé" a écrit dans le message de news:Bonsoir Jean-Paul,
En ce qui concerne l'obligation de saisir des chiffres, il vaut mieux
que
tu utilises l'événement KeyPress... Ainsi l'erreur ne pourra pas se
faire
car le message interviendra dès la saisie de la première lettre. On
ajoute
un beep pour réveiller ! ;)
Private Sub TextBox1_KeyPress(ByVal KeyAscii As MSForms.ReturnInteger)
If InStr("0123456789", Chr(KeyAscii)) = 0 Then
KeyAscii = 0
Beep
MsgBox "Chiffres exclusivement!"
End If
End Sub
Par contre, pour le SetFocus avec l'événement Exit, je ne vois pas trop
comment on peut faire. A la place du SetFocus, tu peux mettre
Cancel= True
mais dans ce cas tu ne pourras pas sortir de la boîte. Donc, à suivre..
Pour l'instant il est trop tard ! ;)
Circé
http://faqword.free.fr
jepac a présenté l'énoncé suivant :Bonsoir,
J'ai écrit la macro suivante pour qu'en cas d'erreur un message
s'affiche
et que le focus retourne sur la Textbox - Les messages s'affichent
mais
le focus ne retourne pas sur la TextBox - Pourquoi ?
Merci de votre aide
Jean-Paul
Private Sub TextBox1_Exit(ByVal Cancel As MSForms.ReturnBoolean)
If TextBox1.TextLength < 10 Then
MsgBox ("Le siren doit être composé de 10 chiffres")
Me.TextBox1.SetFocus
End If
If Not IsNumeric(Me.TextBox1.Text) Then
MsgBox "Chiffres exclusivement"
Me.TextBox1.SetFocus
End If
End Sub
Rien n'y fait le focus ne retourne pas à la TextBox1, voici ce qui est
Private Sub TextBox1_AfterUpdate()
If TextBox1.TextLength < 10 Then
MsgBox ("Le siren doit être composé de 10 chiffres")
Me.TextBox2.SetFocus
Me.TextBox1.SetFocus
Exit Sub
Else
If Not IsNumeric(Me.TextBox1.Text) Then
Beep
MsgBox "Chiffres exclusivement"
Me.TextBox2.SetFocus
Me.TextBox1.SetFocus
Exit Sub
End If
End If
End SubEssaie au lieu de OnExit d'utiliser AfterUpdate.
J'utilise peu de OnExit, si je ne change rien, elle s'exécute quand même,
alors que AfterUpdate ne s'exécute que si il y a changement.
--
Heureux-oli
http://heureuxoli.developpez.com/
----------------------------------------------------------------------------------
"jepac" a écrit dans le message de
news:Bonsoir et merci à vous deux ( et bonne année par la même occasion)
Pour Circé : j'ai une erreur de compilation au niveau de (KeyAscii).
Pour heureux-oli : rien à faire, je peux donner le focus à un autre
contrôle
sans problème mais lorsuqu'à la suite j'essaie de redonner le focus au
contrôle sortant le focus reste au contrôle désign' en premier, voilà
comment
Private Sub TextBox1_Exit(ByVal Cancel As MSForms.ReturnBoolean)
If TextBox1.TextLength < 10 Then
MsgBox ("Le siren doit être composé de 10 chiffres")
Me.TextBox2.SetFocus
Me.TextBox1.SetFocus
Exit Sub
Else.........
Merci
Jean-PaulBonjour,
Pour le SetFocus, essaie de donner le focus à un autre contrôle et
ensuite à
ton Textbox.
--
Heureux-oli
http://heureuxoli.developpez.com/
----------------------------------------------------------------------------------
"Circé" a écrit dans le message de news:Bonsoir Jean-Paul,
En ce qui concerne l'obligation de saisir des chiffres, il vaut
mieux
que
tu utilises l'événement KeyPress... Ainsi l'erreur ne pourra pas se
faire
car le message interviendra dès la saisie de la première lettre. On
ajoute
un beep pour réveiller ! ;)
Private Sub TextBox1_KeyPress(ByVal KeyAscii As
MSForms.ReturnInteger)
If InStr("0123456789", Chr(KeyAscii)) = 0 Then
KeyAscii = 0
Beep
MsgBox "Chiffres exclusivement!"
End If
End Sub
Par contre, pour le SetFocus avec l'événement Exit, je ne vois pas
trop
comment on peut faire. A la place du SetFocus, tu peux mettre
Cancel= True
mais dans ce cas tu ne pourras pas sortir de la boîte. Donc, à
suivre..
Pour l'instant il est trop tard ! ;)
Circé
http://faqword.free.fr
jepac a présenté l'énoncé suivant :Bonsoir,
J'ai écrit la macro suivante pour qu'en cas d'erreur un message
s'affiche
et que le focus retourne sur la Textbox - Les messages s'affichent
mais
le focus ne retourne pas sur la TextBox - Pourquoi ?
Merci de votre aide
Jean-Paul
Private Sub TextBox1_Exit(ByVal Cancel As MSForms.ReturnBoolean)
If TextBox1.TextLength < 10 Then
MsgBox ("Le siren doit être composé de 10 chiffres")
Me.TextBox1.SetFocus
End If
If Not IsNumeric(Me.TextBox1.Text) Then
MsgBox "Chiffres exclusivement"
Me.TextBox1.SetFocus
End If
End Sub
Rien n'y fait le focus ne retourne pas à la TextBox1, voici ce qui est
Private Sub TextBox1_AfterUpdate()
If TextBox1.TextLength < 10 Then
MsgBox ("Le siren doit être composé de 10 chiffres")
Me.TextBox2.SetFocus
Me.TextBox1.SetFocus
Exit Sub
Else
If Not IsNumeric(Me.TextBox1.Text) Then
Beep
MsgBox "Chiffres exclusivement"
Me.TextBox2.SetFocus
Me.TextBox1.SetFocus
Exit Sub
End If
End If
End Sub
Essaie au lieu de OnExit d'utiliser AfterUpdate.
J'utilise peu de OnExit, si je ne change rien, elle s'exécute quand même,
alors que AfterUpdate ne s'exécute que si il y a changement.
--
Heureux-oli
http://heureuxoli.developpez.com/
----------------------------------------------------------------------------------
"jepac" <jepac@discussions.microsoft.com> a écrit dans le message de
news:
E36DDF9B-0AB3-416A-8DCE-57A842C438C5@microsoft.com...
Bonsoir et merci à vous deux ( et bonne année par la même occasion)
Pour Circé : j'ai une erreur de compilation au niveau de (KeyAscii).
Pour heureux-oli : rien à faire, je peux donner le focus à un autre
contrôle
sans problème mais lorsuqu'à la suite j'essaie de redonner le focus au
contrôle sortant le focus reste au contrôle désign' en premier, voilà
comment
Private Sub TextBox1_Exit(ByVal Cancel As MSForms.ReturnBoolean)
If TextBox1.TextLength < 10 Then
MsgBox ("Le siren doit être composé de 10 chiffres")
Me.TextBox2.SetFocus
Me.TextBox1.SetFocus
Exit Sub
Else.........
Merci
Jean-Paul
Bonjour,
Pour le SetFocus, essaie de donner le focus à un autre contrôle et
ensuite à
ton Textbox.
--
Heureux-oli
http://heureuxoli.developpez.com/
----------------------------------------------------------------------------------
"Circé" <circe@aea.gr> a écrit dans le message de news:
mn.48207d815aaf15f9.54897@aea.gr...
Bonsoir Jean-Paul,
En ce qui concerne l'obligation de saisir des chiffres, il vaut
mieux
que
tu utilises l'événement KeyPress... Ainsi l'erreur ne pourra pas se
faire
car le message interviendra dès la saisie de la première lettre. On
ajoute
un beep pour réveiller ! ;)
Private Sub TextBox1_KeyPress(ByVal KeyAscii As
MSForms.ReturnInteger)
If InStr("0123456789", Chr(KeyAscii)) = 0 Then
KeyAscii = 0
Beep
MsgBox "Chiffres exclusivement!"
End If
End Sub
Par contre, pour le SetFocus avec l'événement Exit, je ne vois pas
trop
comment on peut faire. A la place du SetFocus, tu peux mettre
Cancel= True
mais dans ce cas tu ne pourras pas sortir de la boîte. Donc, à
suivre..
Pour l'instant il est trop tard ! ;)
Circé
http://faqword.free.fr
jepac a présenté l'énoncé suivant :
Bonsoir,
J'ai écrit la macro suivante pour qu'en cas d'erreur un message
s'affiche
et que le focus retourne sur la Textbox - Les messages s'affichent
mais
le focus ne retourne pas sur la TextBox - Pourquoi ?
Merci de votre aide
Jean-Paul
Private Sub TextBox1_Exit(ByVal Cancel As MSForms.ReturnBoolean)
If TextBox1.TextLength < 10 Then
MsgBox ("Le siren doit être composé de 10 chiffres")
Me.TextBox1.SetFocus
End If
If Not IsNumeric(Me.TextBox1.Text) Then
MsgBox "Chiffres exclusivement"
Me.TextBox1.SetFocus
End If
End Sub
Rien n'y fait le focus ne retourne pas à la TextBox1, voici ce qui est
Private Sub TextBox1_AfterUpdate()
If TextBox1.TextLength < 10 Then
MsgBox ("Le siren doit être composé de 10 chiffres")
Me.TextBox2.SetFocus
Me.TextBox1.SetFocus
Exit Sub
Else
If Not IsNumeric(Me.TextBox1.Text) Then
Beep
MsgBox "Chiffres exclusivement"
Me.TextBox2.SetFocus
Me.TextBox1.SetFocus
Exit Sub
End If
End If
End SubEssaie au lieu de OnExit d'utiliser AfterUpdate.
J'utilise peu de OnExit, si je ne change rien, elle s'exécute quand même,
alors que AfterUpdate ne s'exécute que si il y a changement.
--
Heureux-oli
http://heureuxoli.developpez.com/
----------------------------------------------------------------------------------
"jepac" a écrit dans le message de
news:Bonsoir et merci à vous deux ( et bonne année par la même occasion)
Pour Circé : j'ai une erreur de compilation au niveau de (KeyAscii).
Pour heureux-oli : rien à faire, je peux donner le focus à un autre
contrôle
sans problème mais lorsuqu'à la suite j'essaie de redonner le focus au
contrôle sortant le focus reste au contrôle désign' en premier, voilà
comment
Private Sub TextBox1_Exit(ByVal Cancel As MSForms.ReturnBoolean)
If TextBox1.TextLength < 10 Then
MsgBox ("Le siren doit être composé de 10 chiffres")
Me.TextBox2.SetFocus
Me.TextBox1.SetFocus
Exit Sub
Else.........
Merci
Jean-PaulBonjour,
Pour le SetFocus, essaie de donner le focus à un autre contrôle et
ensuite à
ton Textbox.
--
Heureux-oli
http://heureuxoli.developpez.com/
----------------------------------------------------------------------------------
"Circé" a écrit dans le message de news:Bonsoir Jean-Paul,
En ce qui concerne l'obligation de saisir des chiffres, il vaut
mieux
que
tu utilises l'événement KeyPress... Ainsi l'erreur ne pourra pas se
faire
car le message interviendra dès la saisie de la première lettre. On
ajoute
un beep pour réveiller ! ;)
Private Sub TextBox1_KeyPress(ByVal KeyAscii As
MSForms.ReturnInteger)
If InStr("0123456789", Chr(KeyAscii)) = 0 Then
KeyAscii = 0
Beep
MsgBox "Chiffres exclusivement!"
End If
End Sub
Par contre, pour le SetFocus avec l'événement Exit, je ne vois pas
trop
comment on peut faire. A la place du SetFocus, tu peux mettre
Cancel= True
mais dans ce cas tu ne pourras pas sortir de la boîte. Donc, à
suivre..
Pour l'instant il est trop tard ! ;)
Circé
http://faqword.free.fr
jepac a présenté l'énoncé suivant :Bonsoir,
J'ai écrit la macro suivante pour qu'en cas d'erreur un message
s'affiche
et que le focus retourne sur la Textbox - Les messages s'affichent
mais
le focus ne retourne pas sur la TextBox - Pourquoi ?
Merci de votre aide
Jean-Paul
Private Sub TextBox1_Exit(ByVal Cancel As MSForms.ReturnBoolean)
If TextBox1.TextLength < 10 Then
MsgBox ("Le siren doit être composé de 10 chiffres")
Me.TextBox1.SetFocus
End If
If Not IsNumeric(Me.TextBox1.Text) Then
MsgBox "Chiffres exclusivement"
Me.TextBox1.SetFocus
End If
End Sub
Rien n'y fait le focus ne retourne pas à la TextBox1, voici ce qui est écrit
:
Private Sub TextBox1_AfterUpdate()
If TextBox1.TextLength < 10 Then
MsgBox ("Le siren doit être composé de 10 chiffres")
Me.TextBox2.SetFocus
Me.TextBox1.SetFocus
Exit Sub
Else
If Not IsNumeric(Me.TextBox1.Text) Then
Beep
MsgBox "Chiffres exclusivement"
Me.TextBox2.SetFocus
Me.TextBox1.SetFocus
Exit Sub
End If
End If
End SubEssaie au lieu de OnExit d'utiliser AfterUpdate.
J'utilise peu de OnExit, si je ne change rien, elle s'exécute quand même,
alors que AfterUpdate ne s'exécute que si il y a changement.
--
Heureux-oli
http://heureuxoli.developpez.com/
----------------------------------------------------------------------------------
"jepac" a écrit dans le message de news:Bonsoir et merci à vous deux ( et bonne année par la même occasion)
Pour Circé : j'ai une erreur de compilation au niveau de (KeyAscii).
Pour heureux-oli : rien à faire, je peux donner le focus à un autre
contrôle
sans problème mais lorsuqu'à la suite j'essaie de redonner le focus au
contrôle sortant le focus reste au contrôle désign' en premier, voilà
comment
Private Sub TextBox1_Exit(ByVal Cancel As MSForms.ReturnBoolean)
If TextBox1.TextLength < 10 Then
MsgBox ("Le siren doit être composé de 10 chiffres")
Me.TextBox2.SetFocus
Me.TextBox1.SetFocus
Exit Sub
Else.........
Merci
Jean-PaulBonjour,
Pour le SetFocus, essaie de donner le focus à un autre contrôle et
ensuite à
ton Textbox.
--
Heureux-oli
http://heureuxoli.developpez.com/
----------------------------------------------------------------------------------
"Circé" a écrit dans le message de news:Bonsoir Jean-Paul,
En ce qui concerne l'obligation de saisir des chiffres, il vaut mieux
que
tu utilises l'événement KeyPress... Ainsi l'erreur ne pourra pas se
faire
car le message interviendra dès la saisie de la première lettre. On
ajoute
un beep pour réveiller ! ;)
Private Sub TextBox1_KeyPress(ByVal KeyAscii As MSForms.ReturnInteger)
If InStr("0123456789", Chr(KeyAscii)) = 0 Then
KeyAscii = 0
Beep
MsgBox "Chiffres exclusivement!"
End If
End Sub
Par contre, pour le SetFocus avec l'événement Exit, je ne vois pas trop
comment on peut faire. A la place du SetFocus, tu peux mettre
Cancel= True
mais dans ce cas tu ne pourras pas sortir de la boîte. Donc, à suivre..
Pour l'instant il est trop tard ! ;)
Circé
http://faqword.free.fr
jepac a présenté l'énoncé suivant :Bonsoir,
J'ai écrit la macro suivante pour qu'en cas d'erreur un message
s'affiche
et que le focus retourne sur la Textbox - Les messages s'affichent
mais
le focus ne retourne pas sur la TextBox - Pourquoi ?
Merci de votre aide
Jean-Paul
Private Sub TextBox1_Exit(ByVal Cancel As MSForms.ReturnBoolean)
If TextBox1.TextLength < 10 Then
MsgBox ("Le siren doit être composé de 10 chiffres")
Me.TextBox1.SetFocus
End If
If Not IsNumeric(Me.TextBox1.Text) Then
MsgBox "Chiffres exclusivement"
Me.TextBox1.SetFocus
End If
End Sub
Rien n'y fait le focus ne retourne pas à la TextBox1, voici ce qui est écrit
:
Private Sub TextBox1_AfterUpdate()
If TextBox1.TextLength < 10 Then
MsgBox ("Le siren doit être composé de 10 chiffres")
Me.TextBox2.SetFocus
Me.TextBox1.SetFocus
Exit Sub
Else
If Not IsNumeric(Me.TextBox1.Text) Then
Beep
MsgBox "Chiffres exclusivement"
Me.TextBox2.SetFocus
Me.TextBox1.SetFocus
Exit Sub
End If
End If
End Sub
Essaie au lieu de OnExit d'utiliser AfterUpdate.
J'utilise peu de OnExit, si je ne change rien, elle s'exécute quand même,
alors que AfterUpdate ne s'exécute que si il y a changement.
--
Heureux-oli
http://heureuxoli.developpez.com/
----------------------------------------------------------------------------------
"jepac" <jepac@discussions.microsoft.com> a écrit dans le message de news:
E36DDF9B-0AB3-416A-8DCE-57A842C438C5@microsoft.com...
Bonsoir et merci à vous deux ( et bonne année par la même occasion)
Pour Circé : j'ai une erreur de compilation au niveau de (KeyAscii).
Pour heureux-oli : rien à faire, je peux donner le focus à un autre
contrôle
sans problème mais lorsuqu'à la suite j'essaie de redonner le focus au
contrôle sortant le focus reste au contrôle désign' en premier, voilà
comment
Private Sub TextBox1_Exit(ByVal Cancel As MSForms.ReturnBoolean)
If TextBox1.TextLength < 10 Then
MsgBox ("Le siren doit être composé de 10 chiffres")
Me.TextBox2.SetFocus
Me.TextBox1.SetFocus
Exit Sub
Else.........
Merci
Jean-Paul
Bonjour,
Pour le SetFocus, essaie de donner le focus à un autre contrôle et
ensuite à
ton Textbox.
--
Heureux-oli
http://heureuxoli.developpez.com/
----------------------------------------------------------------------------------
"Circé" <circe@aea.gr> a écrit dans le message de news:
mn.48207d815aaf15f9.54897@aea.gr...
Bonsoir Jean-Paul,
En ce qui concerne l'obligation de saisir des chiffres, il vaut mieux
que
tu utilises l'événement KeyPress... Ainsi l'erreur ne pourra pas se
faire
car le message interviendra dès la saisie de la première lettre. On
ajoute
un beep pour réveiller ! ;)
Private Sub TextBox1_KeyPress(ByVal KeyAscii As MSForms.ReturnInteger)
If InStr("0123456789", Chr(KeyAscii)) = 0 Then
KeyAscii = 0
Beep
MsgBox "Chiffres exclusivement!"
End If
End Sub
Par contre, pour le SetFocus avec l'événement Exit, je ne vois pas trop
comment on peut faire. A la place du SetFocus, tu peux mettre
Cancel= True
mais dans ce cas tu ne pourras pas sortir de la boîte. Donc, à suivre..
Pour l'instant il est trop tard ! ;)
Circé
http://faqword.free.fr
jepac a présenté l'énoncé suivant :
Bonsoir,
J'ai écrit la macro suivante pour qu'en cas d'erreur un message
s'affiche
et que le focus retourne sur la Textbox - Les messages s'affichent
mais
le focus ne retourne pas sur la TextBox - Pourquoi ?
Merci de votre aide
Jean-Paul
Private Sub TextBox1_Exit(ByVal Cancel As MSForms.ReturnBoolean)
If TextBox1.TextLength < 10 Then
MsgBox ("Le siren doit être composé de 10 chiffres")
Me.TextBox1.SetFocus
End If
If Not IsNumeric(Me.TextBox1.Text) Then
MsgBox "Chiffres exclusivement"
Me.TextBox1.SetFocus
End If
End Sub
Rien n'y fait le focus ne retourne pas à la TextBox1, voici ce qui est écrit
:
Private Sub TextBox1_AfterUpdate()
If TextBox1.TextLength < 10 Then
MsgBox ("Le siren doit être composé de 10 chiffres")
Me.TextBox2.SetFocus
Me.TextBox1.SetFocus
Exit Sub
Else
If Not IsNumeric(Me.TextBox1.Text) Then
Beep
MsgBox "Chiffres exclusivement"
Me.TextBox2.SetFocus
Me.TextBox1.SetFocus
Exit Sub
End If
End If
End SubEssaie au lieu de OnExit d'utiliser AfterUpdate.
J'utilise peu de OnExit, si je ne change rien, elle s'exécute quand même,
alors que AfterUpdate ne s'exécute que si il y a changement.
--
Heureux-oli
http://heureuxoli.developpez.com/
----------------------------------------------------------------------------------
"jepac" a écrit dans le message de news:Bonsoir et merci à vous deux ( et bonne année par la même occasion)
Pour Circé : j'ai une erreur de compilation au niveau de (KeyAscii).
Pour heureux-oli : rien à faire, je peux donner le focus à un autre
contrôle
sans problème mais lorsuqu'à la suite j'essaie de redonner le focus au
contrôle sortant le focus reste au contrôle désign' en premier, voilà
comment
Private Sub TextBox1_Exit(ByVal Cancel As MSForms.ReturnBoolean)
If TextBox1.TextLength < 10 Then
MsgBox ("Le siren doit être composé de 10 chiffres")
Me.TextBox2.SetFocus
Me.TextBox1.SetFocus
Exit Sub
Else.........
Merci
Jean-PaulBonjour,
Pour le SetFocus, essaie de donner le focus à un autre contrôle et
ensuite à
ton Textbox.
--
Heureux-oli
http://heureuxoli.developpez.com/
----------------------------------------------------------------------------------
"Circé" a écrit dans le message de news:Bonsoir Jean-Paul,
En ce qui concerne l'obligation de saisir des chiffres, il vaut mieux
que
tu utilises l'événement KeyPress... Ainsi l'erreur ne pourra pas se
faire
car le message interviendra dès la saisie de la première lettre. On
ajoute
un beep pour réveiller ! ;)
Private Sub TextBox1_KeyPress(ByVal KeyAscii As MSForms.ReturnInteger)
If InStr("0123456789", Chr(KeyAscii)) = 0 Then
KeyAscii = 0
Beep
MsgBox "Chiffres exclusivement!"
End If
End Sub
Par contre, pour le SetFocus avec l'événement Exit, je ne vois pas trop
comment on peut faire. A la place du SetFocus, tu peux mettre
Cancel= True
mais dans ce cas tu ne pourras pas sortir de la boîte. Donc, à suivre..
Pour l'instant il est trop tard ! ;)
Circé
http://faqword.free.fr
jepac a présenté l'énoncé suivant :Bonsoir,
J'ai écrit la macro suivante pour qu'en cas d'erreur un message
s'affiche
et que le focus retourne sur la Textbox - Les messages s'affichent
mais
le focus ne retourne pas sur la TextBox - Pourquoi ?
Merci de votre aide
Jean-Paul
Private Sub TextBox1_Exit(ByVal Cancel As MSForms.ReturnBoolean)
If TextBox1.TextLength < 10 Then
MsgBox ("Le siren doit être composé de 10 chiffres")
Me.TextBox1.SetFocus
End If
If Not IsNumeric(Me.TextBox1.Text) Then
MsgBox "Chiffres exclusivement"
Me.TextBox1.SetFocus
End If
End Sub
Bonjour,
Si tu suis mon idée au moins pour l'obligation de saisir des chiffres,
le problème sera déjà divisé par 2 ! Et de plus ça évite de faire des
fautes de frappe pour rien !
Circé
http://faqword.free.fr
jepac avait soumis l'idée :Rien n'y fait le focus ne retourne pas à la TextBox1, voici ce qui est écrit
:
Private Sub TextBox1_AfterUpdate()
If TextBox1.TextLength < 10 Then
MsgBox ("Le siren doit être composé de 10 chiffres")
Me.TextBox2.SetFocus
Me.TextBox1.SetFocus
Exit Sub
Else
If Not IsNumeric(Me.TextBox1.Text) Then
Beep
MsgBox "Chiffres exclusivement"
Me.TextBox2.SetFocus
Me.TextBox1.SetFocus
Exit Sub
End If
End If
End SubEssaie au lieu de OnExit d'utiliser AfterUpdate.
J'utilise peu de OnExit, si je ne change rien, elle s'exécute quand même,
alors que AfterUpdate ne s'exécute que si il y a changement.
--
Heureux-oli
http://heureuxoli.developpez.com/
----------------------------------------------------------------------------------
"jepac" a écrit dans le message de news:Bonsoir et merci à vous deux ( et bonne année par la même occasion)
Pour Circé : j'ai une erreur de compilation au niveau de (KeyAscii).
Pour heureux-oli : rien à faire, je peux donner le focus à un autre
contrôle
sans problème mais lorsuqu'à la suite j'essaie de redonner le focus au
contrôle sortant le focus reste au contrôle désign' en premier, voilà
comment
Private Sub TextBox1_Exit(ByVal Cancel As MSForms.ReturnBoolean)
If TextBox1.TextLength < 10 Then
MsgBox ("Le siren doit être composé de 10 chiffres")
Me.TextBox2.SetFocus
Me.TextBox1.SetFocus
Exit Sub
Else.........
Merci
Jean-PaulBonjour,
Pour le SetFocus, essaie de donner le focus à un autre contrôle et
ensuite à
ton Textbox.
--
Heureux-oli
http://heureuxoli.developpez.com/
----------------------------------------------------------------------------------
"Circé" a écrit dans le message de news:Bonsoir Jean-Paul,
En ce qui concerne l'obligation de saisir des chiffres, il vaut mieux
que
tu utilises l'événement KeyPress... Ainsi l'erreur ne pourra pas se
faire
car le message interviendra dès la saisie de la première lettre. On
ajoute
un beep pour réveiller ! ;)
Private Sub TextBox1_KeyPress(ByVal KeyAscii As MSForms.ReturnInteger)
If InStr("0123456789", Chr(KeyAscii)) = 0 Then
KeyAscii = 0
Beep
MsgBox "Chiffres exclusivement!"
End If
End Sub
Par contre, pour le SetFocus avec l'événement Exit, je ne vois pas trop
comment on peut faire. A la place du SetFocus, tu peux mettre
Cancel= True
mais dans ce cas tu ne pourras pas sortir de la boîte. Donc, à suivre..
Pour l'instant il est trop tard ! ;)
Circé
http://faqword.free.fr
jepac a présenté l'énoncé suivant :Bonsoir,
J'ai écrit la macro suivante pour qu'en cas d'erreur un message
s'affiche
et que le focus retourne sur la Textbox - Les messages s'affichent
mais
le focus ne retourne pas sur la TextBox - Pourquoi ?
Merci de votre aide
Jean-Paul
Private Sub TextBox1_Exit(ByVal Cancel As MSForms.ReturnBoolean)
If TextBox1.TextLength < 10 Then
MsgBox ("Le siren doit être composé de 10 chiffres")
Me.TextBox1.SetFocus
End If
If Not IsNumeric(Me.TextBox1.Text) Then
MsgBox "Chiffres exclusivement"
Me.TextBox1.SetFocus
End If
End Sub
Bonjour,
Si tu suis mon idée au moins pour l'obligation de saisir des chiffres,
le problème sera déjà divisé par 2 ! Et de plus ça évite de faire des
fautes de frappe pour rien !
Circé
http://faqword.free.fr
jepac avait soumis l'idée :
Rien n'y fait le focus ne retourne pas à la TextBox1, voici ce qui est écrit
:
Private Sub TextBox1_AfterUpdate()
If TextBox1.TextLength < 10 Then
MsgBox ("Le siren doit être composé de 10 chiffres")
Me.TextBox2.SetFocus
Me.TextBox1.SetFocus
Exit Sub
Else
If Not IsNumeric(Me.TextBox1.Text) Then
Beep
MsgBox "Chiffres exclusivement"
Me.TextBox2.SetFocus
Me.TextBox1.SetFocus
Exit Sub
End If
End If
End Sub
Essaie au lieu de OnExit d'utiliser AfterUpdate.
J'utilise peu de OnExit, si je ne change rien, elle s'exécute quand même,
alors que AfterUpdate ne s'exécute que si il y a changement.
--
Heureux-oli
http://heureuxoli.developpez.com/
----------------------------------------------------------------------------------
"jepac" <jepac@discussions.microsoft.com> a écrit dans le message de news:
E36DDF9B-0AB3-416A-8DCE-57A842C438C5@microsoft.com...
Bonsoir et merci à vous deux ( et bonne année par la même occasion)
Pour Circé : j'ai une erreur de compilation au niveau de (KeyAscii).
Pour heureux-oli : rien à faire, je peux donner le focus à un autre
contrôle
sans problème mais lorsuqu'à la suite j'essaie de redonner le focus au
contrôle sortant le focus reste au contrôle désign' en premier, voilà
comment
Private Sub TextBox1_Exit(ByVal Cancel As MSForms.ReturnBoolean)
If TextBox1.TextLength < 10 Then
MsgBox ("Le siren doit être composé de 10 chiffres")
Me.TextBox2.SetFocus
Me.TextBox1.SetFocus
Exit Sub
Else.........
Merci
Jean-Paul
Bonjour,
Pour le SetFocus, essaie de donner le focus à un autre contrôle et
ensuite à
ton Textbox.
--
Heureux-oli
http://heureuxoli.developpez.com/
----------------------------------------------------------------------------------
"Circé" <circe@aea.gr> a écrit dans le message de news:
mn.48207d815aaf15f9.54897@aea.gr...
Bonsoir Jean-Paul,
En ce qui concerne l'obligation de saisir des chiffres, il vaut mieux
que
tu utilises l'événement KeyPress... Ainsi l'erreur ne pourra pas se
faire
car le message interviendra dès la saisie de la première lettre. On
ajoute
un beep pour réveiller ! ;)
Private Sub TextBox1_KeyPress(ByVal KeyAscii As MSForms.ReturnInteger)
If InStr("0123456789", Chr(KeyAscii)) = 0 Then
KeyAscii = 0
Beep
MsgBox "Chiffres exclusivement!"
End If
End Sub
Par contre, pour le SetFocus avec l'événement Exit, je ne vois pas trop
comment on peut faire. A la place du SetFocus, tu peux mettre
Cancel= True
mais dans ce cas tu ne pourras pas sortir de la boîte. Donc, à suivre..
Pour l'instant il est trop tard ! ;)
Circé
http://faqword.free.fr
jepac a présenté l'énoncé suivant :
Bonsoir,
J'ai écrit la macro suivante pour qu'en cas d'erreur un message
s'affiche
et que le focus retourne sur la Textbox - Les messages s'affichent
mais
le focus ne retourne pas sur la TextBox - Pourquoi ?
Merci de votre aide
Jean-Paul
Private Sub TextBox1_Exit(ByVal Cancel As MSForms.ReturnBoolean)
If TextBox1.TextLength < 10 Then
MsgBox ("Le siren doit être composé de 10 chiffres")
Me.TextBox1.SetFocus
End If
If Not IsNumeric(Me.TextBox1.Text) Then
MsgBox "Chiffres exclusivement"
Me.TextBox1.SetFocus
End If
End Sub
Bonjour,
Si tu suis mon idée au moins pour l'obligation de saisir des chiffres,
le problème sera déjà divisé par 2 ! Et de plus ça évite de faire des
fautes de frappe pour rien !
Circé
http://faqword.free.fr
jepac avait soumis l'idée :Rien n'y fait le focus ne retourne pas à la TextBox1, voici ce qui est écrit
:
Private Sub TextBox1_AfterUpdate()
If TextBox1.TextLength < 10 Then
MsgBox ("Le siren doit être composé de 10 chiffres")
Me.TextBox2.SetFocus
Me.TextBox1.SetFocus
Exit Sub
Else
If Not IsNumeric(Me.TextBox1.Text) Then
Beep
MsgBox "Chiffres exclusivement"
Me.TextBox2.SetFocus
Me.TextBox1.SetFocus
Exit Sub
End If
End If
End SubEssaie au lieu de OnExit d'utiliser AfterUpdate.
J'utilise peu de OnExit, si je ne change rien, elle s'exécute quand même,
alors que AfterUpdate ne s'exécute que si il y a changement.
--
Heureux-oli
http://heureuxoli.developpez.com/
----------------------------------------------------------------------------------
"jepac" a écrit dans le message de news:Bonsoir et merci à vous deux ( et bonne année par la même occasion)
Pour Circé : j'ai une erreur de compilation au niveau de (KeyAscii).
Pour heureux-oli : rien à faire, je peux donner le focus à un autre
contrôle
sans problème mais lorsuqu'à la suite j'essaie de redonner le focus au
contrôle sortant le focus reste au contrôle désign' en premier, voilà
comment
Private Sub TextBox1_Exit(ByVal Cancel As MSForms.ReturnBoolean)
If TextBox1.TextLength < 10 Then
MsgBox ("Le siren doit être composé de 10 chiffres")
Me.TextBox2.SetFocus
Me.TextBox1.SetFocus
Exit Sub
Else.........
Merci
Jean-PaulBonjour,
Pour le SetFocus, essaie de donner le focus à un autre contrôle et
ensuite à
ton Textbox.
--
Heureux-oli
http://heureuxoli.developpez.com/
----------------------------------------------------------------------------------
"Circé" a écrit dans le message de news:Bonsoir Jean-Paul,
En ce qui concerne l'obligation de saisir des chiffres, il vaut mieux
que
tu utilises l'événement KeyPress... Ainsi l'erreur ne pourra pas se
faire
car le message interviendra dès la saisie de la première lettre. On
ajoute
un beep pour réveiller ! ;)
Private Sub TextBox1_KeyPress(ByVal KeyAscii As MSForms.ReturnInteger)
If InStr("0123456789", Chr(KeyAscii)) = 0 Then
KeyAscii = 0
Beep
MsgBox "Chiffres exclusivement!"
End If
End Sub
Par contre, pour le SetFocus avec l'événement Exit, je ne vois pas trop
comment on peut faire. A la place du SetFocus, tu peux mettre
Cancel= True
mais dans ce cas tu ne pourras pas sortir de la boîte. Donc, à suivre..
Pour l'instant il est trop tard ! ;)
Circé
http://faqword.free.fr
jepac a présenté l'énoncé suivant :Bonsoir,
J'ai écrit la macro suivante pour qu'en cas d'erreur un message
s'affiche
et que le focus retourne sur la Textbox - Les messages s'affichent
mais
le focus ne retourne pas sur la TextBox - Pourquoi ?
Merci de votre aide
Jean-Paul
Private Sub TextBox1_Exit(ByVal Cancel As MSForms.ReturnBoolean)
If TextBox1.TextLength < 10 Then
MsgBox ("Le siren doit être composé de 10 chiffres")
Me.TextBox1.SetFocus
End If
If Not IsNumeric(Me.TextBox1.Text) Then
MsgBox "Chiffres exclusivement"
Me.TextBox1.SetFocus
End If
End Sub
Sur ton second contrôle tu mets
Private Sub TextBox2_Enter()
Me.TextBox1.SetFocus
End Sub
--
Heureux-oli
http://heureuxoli.developpez.com/
----------------------------------------------------------------------------------
"jepac" a écrit dans le message de news:Rien n'y fait le focus ne retourne pas à la TextBox1, voici ce qui est
Private Sub TextBox1_AfterUpdate()
If TextBox1.TextLength < 10 Then
MsgBox ("Le siren doit être composé de 10 chiffres")
Me.TextBox2.SetFocus
Me.TextBox1.SetFocus
Exit Sub
Else
If Not IsNumeric(Me.TextBox1.Text) Then
Beep
MsgBox "Chiffres exclusivement"
Me.TextBox2.SetFocus
Me.TextBox1.SetFocus
Exit Sub
End If
End If
End SubEssaie au lieu de OnExit d'utiliser AfterUpdate.
J'utilise peu de OnExit, si je ne change rien, elle s'exécute quand
même,
alors que AfterUpdate ne s'exécute que si il y a changement.
--
Heureux-oli
http://heureuxoli.developpez.com/
----------------------------------------------------------------------------------
"jepac" a écrit dans le message de
news:Bonsoir et merci à vous deux ( et bonne année par la même occasion)
Pour Circé : j'ai une erreur de compilation au niveau de (KeyAscii).
Pour heureux-oli : rien à faire, je peux donner le focus à un autre
contrôle
sans problème mais lorsuqu'à la suite j'essaie de redonner le focus au
contrôle sortant le focus reste au contrôle désign' en premier, voilà
comment
Private Sub TextBox1_Exit(ByVal Cancel As MSForms.ReturnBoolean)
If TextBox1.TextLength < 10 Then
MsgBox ("Le siren doit être composé de 10 chiffres")
Me.TextBox2.SetFocus
Me.TextBox1.SetFocus
Exit Sub
Else.........
Merci
Jean-PaulBonjour,
Pour le SetFocus, essaie de donner le focus à un autre contrôle et
ensuite à
ton Textbox.
--
Heureux-oli
http://heureuxoli.developpez.com/
----------------------------------------------------------------------------------
"Circé" a écrit dans le message de news:Bonsoir Jean-Paul,
En ce qui concerne l'obligation de saisir des chiffres, il vaut
mieux
que
tu utilises l'événement KeyPress... Ainsi l'erreur ne pourra pas se
faire
car le message interviendra dès la saisie de la première lettre. On
ajoute
un beep pour réveiller ! ;)
Private Sub TextBox1_KeyPress(ByVal KeyAscii As
MSForms.ReturnInteger)
If InStr("0123456789", Chr(KeyAscii)) = 0 Then
KeyAscii = 0
Beep
MsgBox "Chiffres exclusivement!"
End If
End Sub
Par contre, pour le SetFocus avec l'événement Exit, je ne vois pas
trop
comment on peut faire. A la place du SetFocus, tu peux mettre
Cancel= True
mais dans ce cas tu ne pourras pas sortir de la boîte. Donc, à
suivre..
Pour l'instant il est trop tard ! ;)
Circé
http://faqword.free.fr
jepac a présenté l'énoncé suivant :Bonsoir,
J'ai écrit la macro suivante pour qu'en cas d'erreur un message
s'affiche
et que le focus retourne sur la Textbox - Les messages s'affichent
mais
le focus ne retourne pas sur la TextBox - Pourquoi ?
Merci de votre aide
Jean-Paul
Private Sub TextBox1_Exit(ByVal Cancel As MSForms.ReturnBoolean)
If TextBox1.TextLength < 10 Then
MsgBox ("Le siren doit être composé de 10 chiffres")
Me.TextBox1.SetFocus
End If
If Not IsNumeric(Me.TextBox1.Text) Then
MsgBox "Chiffres exclusivement"
Me.TextBox1.SetFocus
End If
End Sub
Sur ton second contrôle tu mets
Private Sub TextBox2_Enter()
Me.TextBox1.SetFocus
End Sub
--
Heureux-oli
http://heureuxoli.developpez.com/
----------------------------------------------------------------------------------
"jepac" <jepac@discussions.microsoft.com> a écrit dans le message de news:
68E8229B-876C-42BD-B07F-444BA3D65539@microsoft.com...
Rien n'y fait le focus ne retourne pas à la TextBox1, voici ce qui est
Private Sub TextBox1_AfterUpdate()
If TextBox1.TextLength < 10 Then
MsgBox ("Le siren doit être composé de 10 chiffres")
Me.TextBox2.SetFocus
Me.TextBox1.SetFocus
Exit Sub
Else
If Not IsNumeric(Me.TextBox1.Text) Then
Beep
MsgBox "Chiffres exclusivement"
Me.TextBox2.SetFocus
Me.TextBox1.SetFocus
Exit Sub
End If
End If
End Sub
Essaie au lieu de OnExit d'utiliser AfterUpdate.
J'utilise peu de OnExit, si je ne change rien, elle s'exécute quand
même,
alors que AfterUpdate ne s'exécute que si il y a changement.
--
Heureux-oli
http://heureuxoli.developpez.com/
----------------------------------------------------------------------------------
"jepac" <jepac@discussions.microsoft.com> a écrit dans le message de
news:
E36DDF9B-0AB3-416A-8DCE-57A842C438C5@microsoft.com...
Bonsoir et merci à vous deux ( et bonne année par la même occasion)
Pour Circé : j'ai une erreur de compilation au niveau de (KeyAscii).
Pour heureux-oli : rien à faire, je peux donner le focus à un autre
contrôle
sans problème mais lorsuqu'à la suite j'essaie de redonner le focus au
contrôle sortant le focus reste au contrôle désign' en premier, voilà
comment
Private Sub TextBox1_Exit(ByVal Cancel As MSForms.ReturnBoolean)
If TextBox1.TextLength < 10 Then
MsgBox ("Le siren doit être composé de 10 chiffres")
Me.TextBox2.SetFocus
Me.TextBox1.SetFocus
Exit Sub
Else.........
Merci
Jean-Paul
Bonjour,
Pour le SetFocus, essaie de donner le focus à un autre contrôle et
ensuite à
ton Textbox.
--
Heureux-oli
http://heureuxoli.developpez.com/
----------------------------------------------------------------------------------
"Circé" <circe@aea.gr> a écrit dans le message de news:
mn.48207d815aaf15f9.54897@aea.gr...
Bonsoir Jean-Paul,
En ce qui concerne l'obligation de saisir des chiffres, il vaut
mieux
que
tu utilises l'événement KeyPress... Ainsi l'erreur ne pourra pas se
faire
car le message interviendra dès la saisie de la première lettre. On
ajoute
un beep pour réveiller ! ;)
Private Sub TextBox1_KeyPress(ByVal KeyAscii As
MSForms.ReturnInteger)
If InStr("0123456789", Chr(KeyAscii)) = 0 Then
KeyAscii = 0
Beep
MsgBox "Chiffres exclusivement!"
End If
End Sub
Par contre, pour le SetFocus avec l'événement Exit, je ne vois pas
trop
comment on peut faire. A la place du SetFocus, tu peux mettre
Cancel= True
mais dans ce cas tu ne pourras pas sortir de la boîte. Donc, à
suivre..
Pour l'instant il est trop tard ! ;)
Circé
http://faqword.free.fr
jepac a présenté l'énoncé suivant :
Bonsoir,
J'ai écrit la macro suivante pour qu'en cas d'erreur un message
s'affiche
et que le focus retourne sur la Textbox - Les messages s'affichent
mais
le focus ne retourne pas sur la TextBox - Pourquoi ?
Merci de votre aide
Jean-Paul
Private Sub TextBox1_Exit(ByVal Cancel As MSForms.ReturnBoolean)
If TextBox1.TextLength < 10 Then
MsgBox ("Le siren doit être composé de 10 chiffres")
Me.TextBox1.SetFocus
End If
If Not IsNumeric(Me.TextBox1.Text) Then
MsgBox "Chiffres exclusivement"
Me.TextBox1.SetFocus
End If
End Sub
Sur ton second contrôle tu mets
Private Sub TextBox2_Enter()
Me.TextBox1.SetFocus
End Sub
--
Heureux-oli
http://heureuxoli.developpez.com/
----------------------------------------------------------------------------------
"jepac" a écrit dans le message de news:Rien n'y fait le focus ne retourne pas à la TextBox1, voici ce qui est
Private Sub TextBox1_AfterUpdate()
If TextBox1.TextLength < 10 Then
MsgBox ("Le siren doit être composé de 10 chiffres")
Me.TextBox2.SetFocus
Me.TextBox1.SetFocus
Exit Sub
Else
If Not IsNumeric(Me.TextBox1.Text) Then
Beep
MsgBox "Chiffres exclusivement"
Me.TextBox2.SetFocus
Me.TextBox1.SetFocus
Exit Sub
End If
End If
End SubEssaie au lieu de OnExit d'utiliser AfterUpdate.
J'utilise peu de OnExit, si je ne change rien, elle s'exécute quand
même,
alors que AfterUpdate ne s'exécute que si il y a changement.
--
Heureux-oli
http://heureuxoli.developpez.com/
----------------------------------------------------------------------------------
"jepac" a écrit dans le message de
news:Bonsoir et merci à vous deux ( et bonne année par la même occasion)
Pour Circé : j'ai une erreur de compilation au niveau de (KeyAscii).
Pour heureux-oli : rien à faire, je peux donner le focus à un autre
contrôle
sans problème mais lorsuqu'à la suite j'essaie de redonner le focus au
contrôle sortant le focus reste au contrôle désign' en premier, voilà
comment
Private Sub TextBox1_Exit(ByVal Cancel As MSForms.ReturnBoolean)
If TextBox1.TextLength < 10 Then
MsgBox ("Le siren doit être composé de 10 chiffres")
Me.TextBox2.SetFocus
Me.TextBox1.SetFocus
Exit Sub
Else.........
Merci
Jean-PaulBonjour,
Pour le SetFocus, essaie de donner le focus à un autre contrôle et
ensuite à
ton Textbox.
--
Heureux-oli
http://heureuxoli.developpez.com/
----------------------------------------------------------------------------------
"Circé" a écrit dans le message de news:Bonsoir Jean-Paul,
En ce qui concerne l'obligation de saisir des chiffres, il vaut
mieux
que
tu utilises l'événement KeyPress... Ainsi l'erreur ne pourra pas se
faire
car le message interviendra dès la saisie de la première lettre. On
ajoute
un beep pour réveiller ! ;)
Private Sub TextBox1_KeyPress(ByVal KeyAscii As
MSForms.ReturnInteger)
If InStr("0123456789", Chr(KeyAscii)) = 0 Then
KeyAscii = 0
Beep
MsgBox "Chiffres exclusivement!"
End If
End Sub
Par contre, pour le SetFocus avec l'événement Exit, je ne vois pas
trop
comment on peut faire. A la place du SetFocus, tu peux mettre
Cancel= True
mais dans ce cas tu ne pourras pas sortir de la boîte. Donc, à
suivre..
Pour l'instant il est trop tard ! ;)
Circé
http://faqword.free.fr
jepac a présenté l'énoncé suivant :Bonsoir,
J'ai écrit la macro suivante pour qu'en cas d'erreur un message
s'affiche
et que le focus retourne sur la Textbox - Les messages s'affichent
mais
le focus ne retourne pas sur la TextBox - Pourquoi ?
Merci de votre aide
Jean-Paul
Private Sub TextBox1_Exit(ByVal Cancel As MSForms.ReturnBoolean)
If TextBox1.TextLength < 10 Then
MsgBox ("Le siren doit être composé de 10 chiffres")
Me.TextBox1.SetFocus
End If
If Not IsNumeric(Me.TextBox1.Text) Then
MsgBox "Chiffres exclusivement"
Me.TextBox1.SetFocus
End If
End Sub
Merci
Pour l'instant j'ai résolu mon problème de SetFocus en mettant la macro à
l'entrée de la TextBox2 au lieu de la sortie de la TextBox1.
quant à ta macro pour les chiffres j'ai une erreur de compilation au
niveau
de (KeyAscii)
Merci
Jean-PaulBonjour,
Si tu suis mon idée au moins pour l'obligation de saisir des chiffres,
le problème sera déjà divisé par 2 ! Et de plus ça évite de faire des
fautes de frappe pour rien !
Circé
http://faqword.free.fr
jepac avait soumis l'idée :Rien n'y fait le focus ne retourne pas à la TextBox1, voici ce qui est
écrit
:
Private Sub TextBox1_AfterUpdate()
If TextBox1.TextLength < 10 Then
MsgBox ("Le siren doit être composé de 10 chiffres")
Me.TextBox2.SetFocus
Me.TextBox1.SetFocus
Exit Sub
Else
If Not IsNumeric(Me.TextBox1.Text) Then
Beep
MsgBox "Chiffres exclusivement"
Me.TextBox2.SetFocus
Me.TextBox1.SetFocus
Exit Sub
End If
End If
End SubEssaie au lieu de OnExit d'utiliser AfterUpdate.
J'utilise peu de OnExit, si je ne change rien, elle s'exécute quand
même,
alors que AfterUpdate ne s'exécute que si il y a changement.
--
Heureux-oli
http://heureuxoli.developpez.com/
----------------------------------------------------------------------------------
"jepac" a écrit dans le message de
news:Bonsoir et merci à vous deux ( et bonne année par la même occasion)
Pour Circé : j'ai une erreur de compilation au niveau de (KeyAscii).
Pour heureux-oli : rien à faire, je peux donner le focus à un autre
contrôle
sans problème mais lorsuqu'à la suite j'essaie de redonner le focus
au
contrôle sortant le focus reste au contrôle désign' en premier, voilà
comment
Private Sub TextBox1_Exit(ByVal Cancel As MSForms.ReturnBoolean)
If TextBox1.TextLength < 10 Then
MsgBox ("Le siren doit être composé de 10 chiffres")
Me.TextBox2.SetFocus
Me.TextBox1.SetFocus
Exit Sub
Else.........
Merci
Jean-PaulBonjour,
Pour le SetFocus, essaie de donner le focus à un autre contrôle et
ensuite à
ton Textbox.
--
Heureux-oli
http://heureuxoli.developpez.com/
----------------------------------------------------------------------------------
"Circé" a écrit dans le message de news:Bonsoir Jean-Paul,
En ce qui concerne l'obligation de saisir des chiffres, il vaut
mieux
que
tu utilises l'événement KeyPress... Ainsi l'erreur ne pourra pas se
faire
car le message interviendra dès la saisie de la première lettre. On
ajoute
un beep pour réveiller ! ;)
Private Sub TextBox1_KeyPress(ByVal KeyAscii As
MSForms.ReturnInteger)
If InStr("0123456789", Chr(KeyAscii)) = 0 Then
KeyAscii = 0
Beep
MsgBox "Chiffres exclusivement!"
End If
End Sub
Par contre, pour le SetFocus avec l'événement Exit, je ne vois pas
trop
comment on peut faire. A la place du SetFocus, tu peux mettre
Cancel= True
mais dans ce cas tu ne pourras pas sortir de la boîte. Donc, à
suivre..
Pour l'instant il est trop tard ! ;)
Circé
http://faqword.free.fr
jepac a présenté l'énoncé suivant :Bonsoir,
J'ai écrit la macro suivante pour qu'en cas d'erreur un message
s'affiche
et que le focus retourne sur la Textbox - Les messages s'affichent
mais
le focus ne retourne pas sur la TextBox - Pourquoi ?
Merci de votre aide
Jean-Paul
Private Sub TextBox1_Exit(ByVal Cancel As MSForms.ReturnBoolean)
If TextBox1.TextLength < 10 Then
MsgBox ("Le siren doit être composé de 10 chiffres")
Me.TextBox1.SetFocus
End If
If Not IsNumeric(Me.TextBox1.Text) Then
MsgBox "Chiffres exclusivement"
Me.TextBox1.SetFocus
End If
End Sub
Merci
Pour l'instant j'ai résolu mon problème de SetFocus en mettant la macro à
l'entrée de la TextBox2 au lieu de la sortie de la TextBox1.
quant à ta macro pour les chiffres j'ai une erreur de compilation au
niveau
de (KeyAscii)
Merci
Jean-Paul
Bonjour,
Si tu suis mon idée au moins pour l'obligation de saisir des chiffres,
le problème sera déjà divisé par 2 ! Et de plus ça évite de faire des
fautes de frappe pour rien !
Circé
http://faqword.free.fr
jepac avait soumis l'idée :
Rien n'y fait le focus ne retourne pas à la TextBox1, voici ce qui est
écrit
:
Private Sub TextBox1_AfterUpdate()
If TextBox1.TextLength < 10 Then
MsgBox ("Le siren doit être composé de 10 chiffres")
Me.TextBox2.SetFocus
Me.TextBox1.SetFocus
Exit Sub
Else
If Not IsNumeric(Me.TextBox1.Text) Then
Beep
MsgBox "Chiffres exclusivement"
Me.TextBox2.SetFocus
Me.TextBox1.SetFocus
Exit Sub
End If
End If
End Sub
Essaie au lieu de OnExit d'utiliser AfterUpdate.
J'utilise peu de OnExit, si je ne change rien, elle s'exécute quand
même,
alors que AfterUpdate ne s'exécute que si il y a changement.
--
Heureux-oli
http://heureuxoli.developpez.com/
----------------------------------------------------------------------------------
"jepac" <jepac@discussions.microsoft.com> a écrit dans le message de
news:
E36DDF9B-0AB3-416A-8DCE-57A842C438C5@microsoft.com...
Bonsoir et merci à vous deux ( et bonne année par la même occasion)
Pour Circé : j'ai une erreur de compilation au niveau de (KeyAscii).
Pour heureux-oli : rien à faire, je peux donner le focus à un autre
contrôle
sans problème mais lorsuqu'à la suite j'essaie de redonner le focus
au
contrôle sortant le focus reste au contrôle désign' en premier, voilà
comment
Private Sub TextBox1_Exit(ByVal Cancel As MSForms.ReturnBoolean)
If TextBox1.TextLength < 10 Then
MsgBox ("Le siren doit être composé de 10 chiffres")
Me.TextBox2.SetFocus
Me.TextBox1.SetFocus
Exit Sub
Else.........
Merci
Jean-Paul
Bonjour,
Pour le SetFocus, essaie de donner le focus à un autre contrôle et
ensuite à
ton Textbox.
--
Heureux-oli
http://heureuxoli.developpez.com/
----------------------------------------------------------------------------------
"Circé" <circe@aea.gr> a écrit dans le message de news:
mn.48207d815aaf15f9.54897@aea.gr...
Bonsoir Jean-Paul,
En ce qui concerne l'obligation de saisir des chiffres, il vaut
mieux
que
tu utilises l'événement KeyPress... Ainsi l'erreur ne pourra pas se
faire
car le message interviendra dès la saisie de la première lettre. On
ajoute
un beep pour réveiller ! ;)
Private Sub TextBox1_KeyPress(ByVal KeyAscii As
MSForms.ReturnInteger)
If InStr("0123456789", Chr(KeyAscii)) = 0 Then
KeyAscii = 0
Beep
MsgBox "Chiffres exclusivement!"
End If
End Sub
Par contre, pour le SetFocus avec l'événement Exit, je ne vois pas
trop
comment on peut faire. A la place du SetFocus, tu peux mettre
Cancel= True
mais dans ce cas tu ne pourras pas sortir de la boîte. Donc, à
suivre..
Pour l'instant il est trop tard ! ;)
Circé
http://faqword.free.fr
jepac a présenté l'énoncé suivant :
Bonsoir,
J'ai écrit la macro suivante pour qu'en cas d'erreur un message
s'affiche
et que le focus retourne sur la Textbox - Les messages s'affichent
mais
le focus ne retourne pas sur la TextBox - Pourquoi ?
Merci de votre aide
Jean-Paul
Private Sub TextBox1_Exit(ByVal Cancel As MSForms.ReturnBoolean)
If TextBox1.TextLength < 10 Then
MsgBox ("Le siren doit être composé de 10 chiffres")
Me.TextBox1.SetFocus
End If
If Not IsNumeric(Me.TextBox1.Text) Then
MsgBox "Chiffres exclusivement"
Me.TextBox1.SetFocus
End If
End Sub
Merci
Pour l'instant j'ai résolu mon problème de SetFocus en mettant la macro à
l'entrée de la TextBox2 au lieu de la sortie de la TextBox1.
quant à ta macro pour les chiffres j'ai une erreur de compilation au
niveau
de (KeyAscii)
Merci
Jean-PaulBonjour,
Si tu suis mon idée au moins pour l'obligation de saisir des chiffres,
le problème sera déjà divisé par 2 ! Et de plus ça évite de faire des
fautes de frappe pour rien !
Circé
http://faqword.free.fr
jepac avait soumis l'idée :Rien n'y fait le focus ne retourne pas à la TextBox1, voici ce qui est
écrit
:
Private Sub TextBox1_AfterUpdate()
If TextBox1.TextLength < 10 Then
MsgBox ("Le siren doit être composé de 10 chiffres")
Me.TextBox2.SetFocus
Me.TextBox1.SetFocus
Exit Sub
Else
If Not IsNumeric(Me.TextBox1.Text) Then
Beep
MsgBox "Chiffres exclusivement"
Me.TextBox2.SetFocus
Me.TextBox1.SetFocus
Exit Sub
End If
End If
End SubEssaie au lieu de OnExit d'utiliser AfterUpdate.
J'utilise peu de OnExit, si je ne change rien, elle s'exécute quand
même,
alors que AfterUpdate ne s'exécute que si il y a changement.
--
Heureux-oli
http://heureuxoli.developpez.com/
----------------------------------------------------------------------------------
"jepac" a écrit dans le message de
news:Bonsoir et merci à vous deux ( et bonne année par la même occasion)
Pour Circé : j'ai une erreur de compilation au niveau de (KeyAscii).
Pour heureux-oli : rien à faire, je peux donner le focus à un autre
contrôle
sans problème mais lorsuqu'à la suite j'essaie de redonner le focus
au
contrôle sortant le focus reste au contrôle désign' en premier, voilà
comment
Private Sub TextBox1_Exit(ByVal Cancel As MSForms.ReturnBoolean)
If TextBox1.TextLength < 10 Then
MsgBox ("Le siren doit être composé de 10 chiffres")
Me.TextBox2.SetFocus
Me.TextBox1.SetFocus
Exit Sub
Else.........
Merci
Jean-PaulBonjour,
Pour le SetFocus, essaie de donner le focus à un autre contrôle et
ensuite à
ton Textbox.
--
Heureux-oli
http://heureuxoli.developpez.com/
----------------------------------------------------------------------------------
"Circé" a écrit dans le message de news:Bonsoir Jean-Paul,
En ce qui concerne l'obligation de saisir des chiffres, il vaut
mieux
que
tu utilises l'événement KeyPress... Ainsi l'erreur ne pourra pas se
faire
car le message interviendra dès la saisie de la première lettre. On
ajoute
un beep pour réveiller ! ;)
Private Sub TextBox1_KeyPress(ByVal KeyAscii As
MSForms.ReturnInteger)
If InStr("0123456789", Chr(KeyAscii)) = 0 Then
KeyAscii = 0
Beep
MsgBox "Chiffres exclusivement!"
End If
End Sub
Par contre, pour le SetFocus avec l'événement Exit, je ne vois pas
trop
comment on peut faire. A la place du SetFocus, tu peux mettre
Cancel= True
mais dans ce cas tu ne pourras pas sortir de la boîte. Donc, à
suivre..
Pour l'instant il est trop tard ! ;)
Circé
http://faqword.free.fr
jepac a présenté l'énoncé suivant :Bonsoir,
J'ai écrit la macro suivante pour qu'en cas d'erreur un message
s'affiche
et que le focus retourne sur la Textbox - Les messages s'affichent
mais
le focus ne retourne pas sur la TextBox - Pourquoi ?
Merci de votre aide
Jean-Paul
Private Sub TextBox1_Exit(ByVal Cancel As MSForms.ReturnBoolean)
If TextBox1.TextLength < 10 Then
MsgBox ("Le siren doit être composé de 10 chiffres")
Me.TextBox1.SetFocus
End If
If Not IsNumeric(Me.TextBox1.Text) Then
MsgBox "Chiffres exclusivement"
Me.TextBox1.SetFocus
End If
End Sub