controler la saisie d'un nombre dans une variable texte à l'écran
9 réponses
thierry
Bonjour,
j'ai fais un écran dans lequel il y a des text box.
Dans 1 de ces text box, l'utilisateur doit rentrer une somme avec deux
décimales. Pour être sur que la somme soit correcte, je fais une
conversion avec détection d'erreur:
On Error GoTo 0
montant = CVar(txt_montant.Text)
On Error GoTo erreur_convertion
Exit Sub
erreur_convertion:
MsgBox ("le montant est incorrect") & Err.Number
si je rentre un chiffre correcte, cela se passe bien.
Par contre, si je rentre un chiffre incorrecte (par exemple un point
au lieu de la virgule), cela me met :
Erreur d'exécution 13
Type incompatible
je pensais que normalement ce genre d'erreur était vu par le ON ERROR
ce qui apparement ne fonctionne pas.
De plus, comment puis je imposer un format de saisie?
On Error GoTo erreur_convertion montant = CVar(txt_montant.Text) On Error GoTo 0
ng
Salut,
Essaye en employant IsNumeric pour véfifier.
If Not IsNumeric(MaValeur) Then MsgBox "Valeur incorrecte !"
On peut aussi tester/convertir avec Val(), Val converti une chaine en nombre (renvoit 0 si la chaine n'est pas numérique), plus d'infos dans l'aide de VB.
-- Nicolas G. FAQ VB : http://faq.vb.free.fr API Guide : http://www.allapi.net Google Groups : http://groups.google.fr/ MZ-Tools : http://www.mztools.com/
"thierry" a écrit dans le message de news:
Bonjour,
j'ai fais un écran dans lequel il y a des text box. Dans 1 de ces text box, l'utilisateur doit rentrer une somme avec deux décimales. Pour être sur que la somme soit correcte, je fais une conversion avec détection d'erreur:
On Error GoTo 0 montant = CVar(txt_montant.Text) On Error GoTo erreur_convertion
Exit Sub
erreur_convertion: MsgBox ("le montant est incorrect") & Err.Number
si je rentre un chiffre correcte, cela se passe bien. Par contre, si je rentre un chiffre incorrecte (par exemple un point au lieu de la virgule), cela me met : Erreur d'exécution 13 Type incompatible
je pensais que normalement ce genre d'erreur était vu par le ON ERROR ce qui apparement ne fonctionne pas.
De plus, comment puis je imposer un format de saisie?
Cordialement
Thierry
Salut,
Essaye en employant IsNumeric pour véfifier.
If Not IsNumeric(MaValeur) Then MsgBox "Valeur incorrecte !"
On peut aussi tester/convertir avec Val(), Val converti une chaine en nombre
(renvoit 0 si la chaine n'est pas numérique), plus d'infos dans l'aide de
VB.
--
Nicolas G.
FAQ VB : http://faq.vb.free.fr
API Guide : http://www.allapi.net
Google Groups : http://groups.google.fr/
MZ-Tools : http://www.mztools.com/
"thierry" <thierry.marcel@laposte.net> a écrit dans le message de news:
n17930t7g8uculcj38h34c4c3vcfp7hfbi@4ax.com...
Bonjour,
j'ai fais un écran dans lequel il y a des text box.
Dans 1 de ces text box, l'utilisateur doit rentrer une somme avec deux
décimales. Pour être sur que la somme soit correcte, je fais une
conversion avec détection d'erreur:
On Error GoTo 0
montant = CVar(txt_montant.Text)
On Error GoTo erreur_convertion
Exit Sub
erreur_convertion:
MsgBox ("le montant est incorrect") & Err.Number
si je rentre un chiffre correcte, cela se passe bien.
Par contre, si je rentre un chiffre incorrecte (par exemple un point
au lieu de la virgule), cela me met :
Erreur d'exécution 13
Type incompatible
je pensais que normalement ce genre d'erreur était vu par le ON ERROR
ce qui apparement ne fonctionne pas.
De plus, comment puis je imposer un format de saisie?
If Not IsNumeric(MaValeur) Then MsgBox "Valeur incorrecte !"
On peut aussi tester/convertir avec Val(), Val converti une chaine en nombre (renvoit 0 si la chaine n'est pas numérique), plus d'infos dans l'aide de VB.
-- Nicolas G. FAQ VB : http://faq.vb.free.fr API Guide : http://www.allapi.net Google Groups : http://groups.google.fr/ MZ-Tools : http://www.mztools.com/
"thierry" a écrit dans le message de news:
Bonjour,
j'ai fais un écran dans lequel il y a des text box. Dans 1 de ces text box, l'utilisateur doit rentrer une somme avec deux décimales. Pour être sur que la somme soit correcte, je fais une conversion avec détection d'erreur:
On Error GoTo 0 montant = CVar(txt_montant.Text) On Error GoTo erreur_convertion
Exit Sub
erreur_convertion: MsgBox ("le montant est incorrect") & Err.Number
si je rentre un chiffre correcte, cela se passe bien. Par contre, si je rentre un chiffre incorrecte (par exemple un point au lieu de la virgule), cela me met : Erreur d'exécution 13 Type incompatible
je pensais que normalement ce genre d'erreur était vu par le ON ERROR ce qui apparement ne fonctionne pas.
De plus, comment puis je imposer un format de saisie?
Cordialement
Thierry
Bonjour,
Pourquoi ne pas gérer l'appui des touches autorisées à partir de l'évènement KeyPress afin d'éviter ce genre de problème.
Par exemple, pour n'autoriser que les chiffres et la virgule, dans l'évènement KeyPress txtText1 :
If (KeyAscii < 48 Or KeyAscii > 57) And (KeyAscii <> vbKeyDelete Or InStr(1, txtText1, ",") <> 0) And KeyAscii <> 8 Then KeyAscii = 0
Christophe
-----Message d'origine----- Bonjour,
j'ai fais un écran dans lequel il y a des text box. Dans 1 de ces text box, l'utilisateur doit rentrer une
somme avec deux
décimales. Pour être sur que la somme soit correcte, je
fais une
conversion avec détection d'erreur:
On Error GoTo 0 montant = CVar(txt_montant.Text) On Error GoTo erreur_convertion
Exit Sub
erreur_convertion: MsgBox ("le montant est incorrect") & Err.Number
si je rentre un chiffre correcte, cela se passe bien. Par contre, si je rentre un chiffre incorrecte (par
exemple un point
au lieu de la virgule), cela me met : Erreur d'exécution 13 Type incompatible
je pensais que normalement ce genre d'erreur était vu par
le ON ERROR
ce qui apparement ne fonctionne pas.
De plus, comment puis je imposer un format de saisie?
Cordialement
Thierry
.
Bonjour,
Pourquoi ne pas gérer l'appui des touches autorisées à
partir de l'évènement KeyPress afin d'éviter ce genre de
problème.
Par exemple, pour n'autoriser que les chiffres et la
virgule, dans l'évènement KeyPress txtText1 :
If (KeyAscii < 48 Or KeyAscii > 57) And (KeyAscii <>
vbKeyDelete Or InStr(1, txtText1, ",") <> 0) And KeyAscii
<> 8 Then KeyAscii = 0
Christophe
-----Message d'origine-----
Bonjour,
j'ai fais un écran dans lequel il y a des text box.
Dans 1 de ces text box, l'utilisateur doit rentrer une
somme avec deux
décimales. Pour être sur que la somme soit correcte, je
fais une
conversion avec détection d'erreur:
On Error GoTo 0
montant = CVar(txt_montant.Text)
On Error GoTo erreur_convertion
Exit Sub
erreur_convertion:
MsgBox ("le montant est incorrect") & Err.Number
si je rentre un chiffre correcte, cela se passe bien.
Par contre, si je rentre un chiffre incorrecte (par
exemple un point
au lieu de la virgule), cela me met :
Erreur d'exécution 13
Type incompatible
je pensais que normalement ce genre d'erreur était vu par
le ON ERROR
ce qui apparement ne fonctionne pas.
De plus, comment puis je imposer un format de saisie?
Pourquoi ne pas gérer l'appui des touches autorisées à partir de l'évènement KeyPress afin d'éviter ce genre de problème.
Par exemple, pour n'autoriser que les chiffres et la virgule, dans l'évènement KeyPress txtText1 :
If (KeyAscii < 48 Or KeyAscii > 57) And (KeyAscii <> vbKeyDelete Or InStr(1, txtText1, ",") <> 0) And KeyAscii <> 8 Then KeyAscii = 0
Christophe
-----Message d'origine----- Bonjour,
j'ai fais un écran dans lequel il y a des text box. Dans 1 de ces text box, l'utilisateur doit rentrer une
somme avec deux
décimales. Pour être sur que la somme soit correcte, je
fais une
conversion avec détection d'erreur:
On Error GoTo 0 montant = CVar(txt_montant.Text) On Error GoTo erreur_convertion
Exit Sub
erreur_convertion: MsgBox ("le montant est incorrect") & Err.Number
si je rentre un chiffre correcte, cela se passe bien. Par contre, si je rentre un chiffre incorrecte (par
exemple un point
au lieu de la virgule), cela me met : Erreur d'exécution 13 Type incompatible
je pensais que normalement ce genre d'erreur était vu par
le ON ERROR
ce qui apparement ne fonctionne pas.
De plus, comment puis je imposer un format de saisie?
Cordialement
Thierry
.
thierry
ok, je viens d'essayer en changeant de place mon on error et ça marche. apparement c'est le fait de mettre un on error qui génère un gestionaire d'erreur actif .
Par contre, je garde les 2 autres méthodes sous le coude pour les utiliser plus tard
Le Thu, 19 Feb 2004 12:34:24 +0100, thierry a écrit :
Bonjour,
j'ai fais un écran dans lequel il y a des text box. Dans 1 de ces text box, l'utilisateur doit rentrer une somme avec deux décimales. Pour être sur que la somme soit correcte, je fais une conversion avec détection d'erreur:
On Error GoTo 0 montant = CVar(txt_montant.Text) On Error GoTo erreur_convertion
Exit Sub
erreur_convertion: MsgBox ("le montant est incorrect") & Err.Number
si je rentre un chiffre correcte, cela se passe bien. Par contre, si je rentre un chiffre incorrecte (par exemple un point au lieu de la virgule), cela me met : Erreur d'exécution 13 Type incompatible
je pensais que normalement ce genre d'erreur était vu par le ON ERROR ce qui apparement ne fonctionne pas.
De plus, comment puis je imposer un format de saisie?
Cordialement
Thierry
ok, je viens d'essayer en changeant de place mon on error et ça
marche. apparement c'est le fait de mettre un on error qui génère un
gestionaire d'erreur actif .
Par contre, je garde les 2 autres méthodes sous le coude pour les
utiliser plus tard
Le Thu, 19 Feb 2004 12:34:24 +0100, thierry
<thierry.marcel@laposte.net> a écrit :
Bonjour,
j'ai fais un écran dans lequel il y a des text box.
Dans 1 de ces text box, l'utilisateur doit rentrer une somme avec deux
décimales. Pour être sur que la somme soit correcte, je fais une
conversion avec détection d'erreur:
On Error GoTo 0
montant = CVar(txt_montant.Text)
On Error GoTo erreur_convertion
Exit Sub
erreur_convertion:
MsgBox ("le montant est incorrect") & Err.Number
si je rentre un chiffre correcte, cela se passe bien.
Par contre, si je rentre un chiffre incorrecte (par exemple un point
au lieu de la virgule), cela me met :
Erreur d'exécution 13
Type incompatible
je pensais que normalement ce genre d'erreur était vu par le ON ERROR
ce qui apparement ne fonctionne pas.
De plus, comment puis je imposer un format de saisie?
ok, je viens d'essayer en changeant de place mon on error et ça marche. apparement c'est le fait de mettre un on error qui génère un gestionaire d'erreur actif .
Par contre, je garde les 2 autres méthodes sous le coude pour les utiliser plus tard
Le Thu, 19 Feb 2004 12:34:24 +0100, thierry a écrit :
Bonjour,
j'ai fais un écran dans lequel il y a des text box. Dans 1 de ces text box, l'utilisateur doit rentrer une somme avec deux décimales. Pour être sur que la somme soit correcte, je fais une conversion avec détection d'erreur:
On Error GoTo 0 montant = CVar(txt_montant.Text) On Error GoTo erreur_convertion
Exit Sub
erreur_convertion: MsgBox ("le montant est incorrect") & Err.Number
si je rentre un chiffre correcte, cela se passe bien. Par contre, si je rentre un chiffre incorrecte (par exemple un point au lieu de la virgule), cela me met : Erreur d'exécution 13 Type incompatible
je pensais que normalement ce genre d'erreur était vu par le ON ERROR ce qui apparement ne fonctionne pas.
De plus, comment puis je imposer un format de saisie?
Cordialement
Thierry
ng
Cette méthode comporte une petite vulnérabilité : il suffit de copier du texte dans le presse papier puis d'utiliser le menu contextuel pour le coller !
Cependant, couplée avec un IsNumeric (ou autre méthode de vérification lors de la validation), cela peut s'avèrer assez pratique.
-- Nicolas G. FAQ VB : http://faq.vb.free.fr API Guide : http://www.allapi.net Google Groups : http://groups.google.fr/ MZ-Tools : http://www.mztools.com/
a écrit dans le message de news: 130ce01c3f6e3$7403c8c0$ Bonjour,
Pourquoi ne pas gérer l'appui des touches autorisées à partir de l'évènement KeyPress afin d'éviter ce genre de problème.
Par exemple, pour n'autoriser que les chiffres et la virgule, dans l'évènement KeyPress txtText1 :
If (KeyAscii < 48 Or KeyAscii > 57) And (KeyAscii <> vbKeyDelete Or InStr(1, txtText1, ",") <> 0) And KeyAscii <> 8 Then KeyAscii = 0
Christophe
-----Message d'origine----- Bonjour,
j'ai fais un écran dans lequel il y a des text box. Dans 1 de ces text box, l'utilisateur doit rentrer une
somme avec deux
décimales. Pour être sur que la somme soit correcte, je
fais une
conversion avec détection d'erreur:
On Error GoTo 0 montant = CVar(txt_montant.Text) On Error GoTo erreur_convertion
Exit Sub
erreur_convertion: MsgBox ("le montant est incorrect") & Err.Number
si je rentre un chiffre correcte, cela se passe bien. Par contre, si je rentre un chiffre incorrecte (par
exemple un point
au lieu de la virgule), cela me met : Erreur d'exécution 13 Type incompatible
je pensais que normalement ce genre d'erreur était vu par
le ON ERROR
ce qui apparement ne fonctionne pas.
De plus, comment puis je imposer un format de saisie?
Cordialement
Thierry
.
Cette méthode comporte une petite vulnérabilité : il suffit de copier du
texte dans le presse papier puis d'utiliser le menu contextuel pour le
coller !
Cependant, couplée avec un IsNumeric (ou autre méthode de vérification lors
de la validation), cela peut s'avèrer assez pratique.
--
Nicolas G.
FAQ VB : http://faq.vb.free.fr
API Guide : http://www.allapi.net
Google Groups : http://groups.google.fr/
MZ-Tools : http://www.mztools.com/
<anonymous@discussions.microsoft.com> a écrit dans le message de news:
130ce01c3f6e3$7403c8c0$a601280a@phx.gbl...
Bonjour,
Pourquoi ne pas gérer l'appui des touches autorisées à
partir de l'évènement KeyPress afin d'éviter ce genre de
problème.
Par exemple, pour n'autoriser que les chiffres et la
virgule, dans l'évènement KeyPress txtText1 :
If (KeyAscii < 48 Or KeyAscii > 57) And (KeyAscii <>
vbKeyDelete Or InStr(1, txtText1, ",") <> 0) And KeyAscii
<> 8 Then KeyAscii = 0
Christophe
-----Message d'origine-----
Bonjour,
j'ai fais un écran dans lequel il y a des text box.
Dans 1 de ces text box, l'utilisateur doit rentrer une
somme avec deux
décimales. Pour être sur que la somme soit correcte, je
fais une
conversion avec détection d'erreur:
On Error GoTo 0
montant = CVar(txt_montant.Text)
On Error GoTo erreur_convertion
Exit Sub
erreur_convertion:
MsgBox ("le montant est incorrect") & Err.Number
si je rentre un chiffre correcte, cela se passe bien.
Par contre, si je rentre un chiffre incorrecte (par
exemple un point
au lieu de la virgule), cela me met :
Erreur d'exécution 13
Type incompatible
je pensais que normalement ce genre d'erreur était vu par
le ON ERROR
ce qui apparement ne fonctionne pas.
De plus, comment puis je imposer un format de saisie?
Cette méthode comporte une petite vulnérabilité : il suffit de copier du texte dans le presse papier puis d'utiliser le menu contextuel pour le coller !
Cependant, couplée avec un IsNumeric (ou autre méthode de vérification lors de la validation), cela peut s'avèrer assez pratique.
-- Nicolas G. FAQ VB : http://faq.vb.free.fr API Guide : http://www.allapi.net Google Groups : http://groups.google.fr/ MZ-Tools : http://www.mztools.com/
a écrit dans le message de news: 130ce01c3f6e3$7403c8c0$ Bonjour,
Pourquoi ne pas gérer l'appui des touches autorisées à partir de l'évènement KeyPress afin d'éviter ce genre de problème.
Par exemple, pour n'autoriser que les chiffres et la virgule, dans l'évènement KeyPress txtText1 :
If (KeyAscii < 48 Or KeyAscii > 57) And (KeyAscii <> vbKeyDelete Or InStr(1, txtText1, ",") <> 0) And KeyAscii <> 8 Then KeyAscii = 0
Christophe
-----Message d'origine----- Bonjour,
j'ai fais un écran dans lequel il y a des text box. Dans 1 de ces text box, l'utilisateur doit rentrer une
somme avec deux
décimales. Pour être sur que la somme soit correcte, je
fais une
conversion avec détection d'erreur:
On Error GoTo 0 montant = CVar(txt_montant.Text) On Error GoTo erreur_convertion
Exit Sub
erreur_convertion: MsgBox ("le montant est incorrect") & Err.Number
si je rentre un chiffre correcte, cela se passe bien. Par contre, si je rentre un chiffre incorrecte (par
exemple un point
au lieu de la virgule), cela me met : Erreur d'exécution 13 Type incompatible
je pensais que normalement ce genre d'erreur était vu par
le ON ERROR
ce qui apparement ne fonctionne pas.
De plus, comment puis je imposer un format de saisie?
Cordialement
Thierry
.
François Picalausa
Bonjour/soir,
IsNumeric est à déconseiller. Voir l'explication ici: http://groups.google.be/groups?selm=%23c4VQqb4CHA.2392%40TK2MSFTNGP09.phx.gbl
Voilà une super remarque à laquelle je n'avais pas pensé. J'utilise cette méthode en permanence dans mes développements, et je n'avais pas du tout pensé à ce petit problème. Merci de me l'avoir fait remarquer. Comme quoi on apprend beaucoup à consulter les newsgroups.
Merci bien :-)
Christophe
"ng" a écrit dans le message de news:
Cette méthode comporte une petite vulnérabilité : il suffit de copier du texte dans le presse papier puis d'utiliser le menu contextuel pour le coller !
Cependant, couplée avec un IsNumeric (ou autre méthode de vérification
lors
de la validation), cela peut s'avèrer assez pratique.
-- Nicolas G. FAQ VB : http://faq.vb.free.fr API Guide : http://www.allapi.net Google Groups : http://groups.google.fr/ MZ-Tools : http://www.mztools.com/
a écrit dans le message de news: 130ce01c3f6e3$7403c8c0$ Bonjour,
Pourquoi ne pas gérer l'appui des touches autorisées à partir de l'évènement KeyPress afin d'éviter ce genre de problème.
Par exemple, pour n'autoriser que les chiffres et la virgule, dans l'évènement KeyPress txtText1 :
If (KeyAscii < 48 Or KeyAscii > 57) And (KeyAscii <> vbKeyDelete Or InStr(1, txtText1, ",") <> 0) And KeyAscii <> 8 Then KeyAscii = 0
Christophe
>-----Message d'origine----- >Bonjour, > >j'ai fais un écran dans lequel il y a des text box. >Dans 1 de ces text box, l'utilisateur doit rentrer une somme avec deux >décimales. Pour être sur que la somme soit correcte, je fais une >conversion avec détection d'erreur: > > > On Error GoTo 0 > montant = CVar(txt_montant.Text) > On Error GoTo erreur_convertion > > >Exit Sub > >erreur_convertion: >MsgBox ("le montant est incorrect") & Err.Number > > > >si je rentre un chiffre correcte, cela se passe bien. >Par contre, si je rentre un chiffre incorrecte (par exemple un point >au lieu de la virgule), cela me met : >Erreur d'exécution 13 >Type incompatible > >je pensais que normalement ce genre d'erreur était vu par le ON ERROR >ce qui apparement ne fonctionne pas. > >De plus, comment puis je imposer un format de saisie? > >Cordialement > >Thierry > > >. >
Bonjour,
Voilà une super remarque à laquelle je n'avais pas pensé. J'utilise cette
méthode en permanence dans mes développements, et je n'avais pas du tout
pensé à ce petit problème. Merci de me l'avoir fait remarquer. Comme quoi on
apprend beaucoup à consulter les newsgroups.
Merci bien :-)
Christophe
"ng" <ng@ngsoft-fr.com> a écrit dans le message de
news:uGQ6Ixv9DHA.3436@tk2msftngp13.phx.gbl...
Cette méthode comporte une petite vulnérabilité : il suffit de copier du
texte dans le presse papier puis d'utiliser le menu contextuel pour le
coller !
Cependant, couplée avec un IsNumeric (ou autre méthode de vérification
lors
de la validation), cela peut s'avèrer assez pratique.
--
Nicolas G.
FAQ VB : http://faq.vb.free.fr
API Guide : http://www.allapi.net
Google Groups : http://groups.google.fr/
MZ-Tools : http://www.mztools.com/
<anonymous@discussions.microsoft.com> a écrit dans le message de news:
130ce01c3f6e3$7403c8c0$a601280a@phx.gbl...
Bonjour,
Pourquoi ne pas gérer l'appui des touches autorisées à
partir de l'évènement KeyPress afin d'éviter ce genre de
problème.
Par exemple, pour n'autoriser que les chiffres et la
virgule, dans l'évènement KeyPress txtText1 :
If (KeyAscii < 48 Or KeyAscii > 57) And (KeyAscii <>
vbKeyDelete Or InStr(1, txtText1, ",") <> 0) And KeyAscii
<> 8 Then KeyAscii = 0
Christophe
>-----Message d'origine-----
>Bonjour,
>
>j'ai fais un écran dans lequel il y a des text box.
>Dans 1 de ces text box, l'utilisateur doit rentrer une
somme avec deux
>décimales. Pour être sur que la somme soit correcte, je
fais une
>conversion avec détection d'erreur:
>
>
> On Error GoTo 0
> montant = CVar(txt_montant.Text)
> On Error GoTo erreur_convertion
>
>
>Exit Sub
>
>erreur_convertion:
>MsgBox ("le montant est incorrect") & Err.Number
>
>
>
>si je rentre un chiffre correcte, cela se passe bien.
>Par contre, si je rentre un chiffre incorrecte (par
exemple un point
>au lieu de la virgule), cela me met :
>Erreur d'exécution 13
>Type incompatible
>
>je pensais que normalement ce genre d'erreur était vu par
le ON ERROR
>ce qui apparement ne fonctionne pas.
>
>De plus, comment puis je imposer un format de saisie?
>
>Cordialement
>
>Thierry
>
>
>.
>
Voilà une super remarque à laquelle je n'avais pas pensé. J'utilise cette méthode en permanence dans mes développements, et je n'avais pas du tout pensé à ce petit problème. Merci de me l'avoir fait remarquer. Comme quoi on apprend beaucoup à consulter les newsgroups.
Merci bien :-)
Christophe
"ng" a écrit dans le message de news:
Cette méthode comporte une petite vulnérabilité : il suffit de copier du texte dans le presse papier puis d'utiliser le menu contextuel pour le coller !
Cependant, couplée avec un IsNumeric (ou autre méthode de vérification
lors
de la validation), cela peut s'avèrer assez pratique.
-- Nicolas G. FAQ VB : http://faq.vb.free.fr API Guide : http://www.allapi.net Google Groups : http://groups.google.fr/ MZ-Tools : http://www.mztools.com/
a écrit dans le message de news: 130ce01c3f6e3$7403c8c0$ Bonjour,
Pourquoi ne pas gérer l'appui des touches autorisées à partir de l'évènement KeyPress afin d'éviter ce genre de problème.
Par exemple, pour n'autoriser que les chiffres et la virgule, dans l'évènement KeyPress txtText1 :
If (KeyAscii < 48 Or KeyAscii > 57) And (KeyAscii <> vbKeyDelete Or InStr(1, txtText1, ",") <> 0) And KeyAscii <> 8 Then KeyAscii = 0
Christophe
>-----Message d'origine----- >Bonjour, > >j'ai fais un écran dans lequel il y a des text box. >Dans 1 de ces text box, l'utilisateur doit rentrer une somme avec deux >décimales. Pour être sur que la somme soit correcte, je fais une >conversion avec détection d'erreur: > > > On Error GoTo 0 > montant = CVar(txt_montant.Text) > On Error GoTo erreur_convertion > > >Exit Sub > >erreur_convertion: >MsgBox ("le montant est incorrect") & Err.Number > > > >si je rentre un chiffre correcte, cela se passe bien. >Par contre, si je rentre un chiffre incorrecte (par exemple un point >au lieu de la virgule), cela me met : >Erreur d'exécution 13 >Type incompatible > >je pensais que normalement ce genre d'erreur était vu par le ON ERROR >ce qui apparement ne fonctionne pas. > >De plus, comment puis je imposer un format de saisie? > >Cordialement > >Thierry > > >. >
Zoury
Salut à vous! :O)
Il y a deux façon de palier à ce problème..
par APIs : http://groups.google.com/groups?selm=O7E1JabDDHA.584%40TK2MSFTNGP12.phx.gbl&rnum=9
standard : http://groups.google.com/groups?selm=%23CKXkveDDHA.28568%40TK2MSFTNGP10.phx.gbl