bonjour
Y a t il avec vb 2005 une manière élégante de n'autoriser seulement que des
nombres entiers ou décimaux dans un textbox et retour arrière(effacement)?
J'ai trouvé ceci : mais ces codes n'offrent pas toutes les conditions
énumérées ci dessus semble-t-il...
Private Sub TextBox1_KeyPress(ByVal sender As Object, ByVal e As
System.Windows.Forms.KeyPressEventArgs) _
Handles TextBox1.KeyPress
If Not Char.IsDigit(e.KeyChar) Then
'Tous les caractères non numériques ne sont pas traités sur le
TextBox.
e.Handled = True
End If
End Sub
Private Sub TextBox_Validate(Cancel As Boolean)
' Vérifie si la valeur entrée est numérique
If Not IsNumeric(TextBox.Text) Then
Cancel = True ' Annule la validation de contrôle
MsgBox "Veuillez entrer un nombre!"
End If
End Sub
Private Sub TextBox_KeyPress(KeyAscii As Integer)
' Si la valeur n'est pas comprise entre 0 et 9 et qu'elle n'est pas un
backspace
If Not ((KeyAscii >= 48 And KeyAscii <= 57) Or KeyAscii = 8) Then
KeyAscii = 0 'on annule la pression sur la touche
End If
Cette action est irreversible, confirmez la suppression du commentaire ?
Signaler le commentaire
Veuillez sélectionner un problème
Nudité
Violence
Harcèlement
Fraude
Vente illégale
Discours haineux
Terrorisme
Autre
TroXsA
Bonjour,
Pourquoi ne pas faire une petite procedure avec sortie si pas Numérique ? :) -------------------- Exemple ---------------------- If IsNumeric(e.KeyChar) = False Then MsgBox("Ceci n'est pas un numéro") Exit Sub End If ---------------------- Fin -----------------------
Apres il faut géré plusieurs conditions mais le principe est là, a vous de jouer pour la suite, si vous avez des difficultés a le réaliser je pourrais vous aidez !
Cordialement --
Mail : http://cerbermail.com/?rIXgaw9Xsl Site : http://troxsa.info
Bonjour,
Pourquoi ne pas faire une petite procedure avec sortie si pas Numérique ? :)
-------------------- Exemple ----------------------
If IsNumeric(e.KeyChar) = False Then
MsgBox("Ceci n'est pas un numéro")
Exit Sub
End If
---------------------- Fin -----------------------
Apres il faut géré plusieurs conditions mais le principe est là, a vous de
jouer pour la suite, si vous avez des difficultés a le réaliser je pourrais
vous aidez !
Cordialement
--
Mail : http://cerbermail.com/?rIXgaw9Xsl
Site : http://troxsa.info
Pourquoi ne pas faire une petite procedure avec sortie si pas Numérique ? :) -------------------- Exemple ---------------------- If IsNumeric(e.KeyChar) = False Then MsgBox("Ceci n'est pas un numéro") Exit Sub End If ---------------------- Fin -----------------------
Apres il faut géré plusieurs conditions mais le principe est là, a vous de jouer pour la suite, si vous avez des difficultés a le réaliser je pourrais vous aidez !
Cordialement --
Mail : http://cerbermail.com/?rIXgaw9Xsl Site : http://troxsa.info
TroXsA
Re bonjour
Je me suis permis de faire un petit exemple qui fonctionne plutot bien http://troxsa.info/index.php?option=com_content&task=view&id@&Itemid=2 a modifier si besoin
Cordialement
--
Mail : http://cerbermail.com/?rIXgaw9Xsl Site : http://troxsa.info
"Pascal" a écrit dans le message de news: 43f4da90$0$21291$
bonjour Y a t il avec vb 2005 une manière élégante de n'autoriser seulement que des nombres entiers ou décimaux dans un textbox et retour arrière(effacement)? J'ai trouvé ceci : mais ces codes n'offrent pas toutes les conditions énumérées ci dessus semble-t-il...
Private Sub TextBox1_KeyPress(ByVal sender As Object, ByVal e As System.Windows.Forms.KeyPressEventArgs) _ Handles TextBox1.KeyPress
If Not Char.IsDigit(e.KeyChar) Then 'Tous les caractères non numériques ne sont pas traités sur le TextBox. e.Handled = True End If
End Sub
Private Sub TextBox_Validate(Cancel As Boolean)
' Vérifie si la valeur entrée est numérique If Not IsNumeric(TextBox.Text) Then Cancel = True ' Annule la validation de contrôle MsgBox "Veuillez entrer un nombre!" End If
End Sub
Private Sub TextBox_KeyPress(KeyAscii As Integer)
' Si la valeur n'est pas comprise entre 0 et 9 et qu'elle n'est pas un backspace If Not ((KeyAscii >= 48 And KeyAscii <= 57) Or KeyAscii = 8) Then KeyAscii = 0 'on annule la pression sur la touche End If
End Sub
http://www.scalpa.info
Re bonjour
Je me suis permis de faire un petit exemple qui fonctionne plutot bien
http://troxsa.info/index.php?option=com_content&task=view&id@&Itemid=2
a modifier si besoin
Cordialement
--
Mail : http://cerbermail.com/?rIXgaw9Xsl
Site : http://troxsa.info
"Pascal" <scalpanospm@wanadoo.rf> a écrit dans le message de news:
43f4da90$0$21291$8fcfb975@news.wanadoo.fr...
bonjour
Y a t il avec vb 2005 une manière élégante de n'autoriser seulement que
des nombres entiers ou décimaux dans un textbox et retour
arrière(effacement)?
J'ai trouvé ceci : mais ces codes n'offrent pas toutes les conditions
énumérées ci dessus semble-t-il...
Private Sub TextBox1_KeyPress(ByVal sender As Object, ByVal e As
System.Windows.Forms.KeyPressEventArgs) _
Handles TextBox1.KeyPress
If Not Char.IsDigit(e.KeyChar) Then
'Tous les caractères non numériques ne sont pas traités sur le
TextBox.
e.Handled = True
End If
End Sub
Private Sub TextBox_Validate(Cancel As Boolean)
' Vérifie si la valeur entrée est numérique
If Not IsNumeric(TextBox.Text) Then
Cancel = True ' Annule la validation de contrôle
MsgBox "Veuillez entrer un nombre!"
End If
End Sub
Private Sub TextBox_KeyPress(KeyAscii As Integer)
' Si la valeur n'est pas comprise entre 0 et 9 et qu'elle n'est pas un
backspace
If Not ((KeyAscii >= 48 And KeyAscii <= 57) Or KeyAscii = 8) Then
KeyAscii = 0 'on annule la pression sur la touche
End If
Je me suis permis de faire un petit exemple qui fonctionne plutot bien http://troxsa.info/index.php?option=com_content&task=view&id@&Itemid=2 a modifier si besoin
Cordialement
--
Mail : http://cerbermail.com/?rIXgaw9Xsl Site : http://troxsa.info
"Pascal" a écrit dans le message de news: 43f4da90$0$21291$
bonjour Y a t il avec vb 2005 une manière élégante de n'autoriser seulement que des nombres entiers ou décimaux dans un textbox et retour arrière(effacement)? J'ai trouvé ceci : mais ces codes n'offrent pas toutes les conditions énumérées ci dessus semble-t-il...
Private Sub TextBox1_KeyPress(ByVal sender As Object, ByVal e As System.Windows.Forms.KeyPressEventArgs) _ Handles TextBox1.KeyPress
If Not Char.IsDigit(e.KeyChar) Then 'Tous les caractères non numériques ne sont pas traités sur le TextBox. e.Handled = True End If
End Sub
Private Sub TextBox_Validate(Cancel As Boolean)
' Vérifie si la valeur entrée est numérique If Not IsNumeric(TextBox.Text) Then Cancel = True ' Annule la validation de contrôle MsgBox "Veuillez entrer un nombre!" End If
End Sub
Private Sub TextBox_KeyPress(KeyAscii As Integer)
' Si la valeur n'est pas comprise entre 0 et 9 et qu'elle n'est pas un backspace If Not ((KeyAscii >= 48 And KeyAscii <= 57) Or KeyAscii = 8) Then KeyAscii = 0 'on annule la pression sur la touche End If
j'ai revu le code et m'aperçois que cela ne fonctionne que pour les entiers et pas les décimaux... dommage ! Private Sub TxtBxProposition_KeyPress(ByVal sender As Object, ByVal e As System.Windows.Forms.KeyPressEventArgs) Handles TxtBxProposition.KeyPress
If Asc(e.KeyChar) = Keys.Back Or Asc(e.KeyChar) = Keys.Clear Then
Exit Sub
End If
If IsNumeric(e.KeyChar) = False Then
MsgBox("Ceci n'est pas un numéro")
e.Handled = True
Exit Sub
End If
End Sub
http://www.scalpa.info "TroXsA" a écrit dans le message de news: dt48sp$qbt$
Re bonjour
Je me suis permis de faire un petit exemple qui fonctionne plutot bien http://troxsa.info/index.php?option=com_content&task=view&id@&Itemid=2 a modifier si besoin
Cordialement
--
Mail : http://cerbermail.com/?rIXgaw9Xsl Site : http://troxsa.info
"Pascal" a écrit dans le message de news: 43f4da90$0$21291$
bonjour Y a t il avec vb 2005 une manière élégante de n'autoriser seulement que des nombres entiers ou décimaux dans un textbox et retour arrière(effacement)? J'ai trouvé ceci : mais ces codes n'offrent pas toutes les conditions énumérées ci dessus semble-t-il...
Private Sub TextBox1_KeyPress(ByVal sender As Object, ByVal e As System.Windows.Forms.KeyPressEventArgs) _ Handles TextBox1.KeyPress
If Not Char.IsDigit(e.KeyChar) Then 'Tous les caractères non numériques ne sont pas traités sur le TextBox. e.Handled = True End If
End Sub
Private Sub TextBox_Validate(Cancel As Boolean)
' Vérifie si la valeur entrée est numérique If Not IsNumeric(TextBox.Text) Then Cancel = True ' Annule la validation de contrôle MsgBox "Veuillez entrer un nombre!" End If
End Sub
Private Sub TextBox_KeyPress(KeyAscii As Integer)
' Si la valeur n'est pas comprise entre 0 et 9 et qu'elle n'est pas un backspace If Not ((KeyAscii >= 48 And KeyAscii <= 57) Or KeyAscii = 8) Then KeyAscii = 0 'on annule la pression sur la touche End If
End Sub
http://www.scalpa.info
bonjour
j'ai revu le code et m'aperçois que cela ne fonctionne que pour les entiers
et pas les décimaux... dommage !
Private Sub TxtBxProposition_KeyPress(ByVal sender As Object, ByVal e As
System.Windows.Forms.KeyPressEventArgs) Handles TxtBxProposition.KeyPress
If Asc(e.KeyChar) = Keys.Back Or Asc(e.KeyChar) = Keys.Clear Then
Exit Sub
End If
If IsNumeric(e.KeyChar) = False Then
MsgBox("Ceci n'est pas un numéro")
e.Handled = True
Exit Sub
End If
End Sub
http://www.scalpa.info
"TroXsA" <neat@pk.com> a écrit dans le message de news:
dt48sp$qbt$1@s1.news.oleane.net...
Re bonjour
Je me suis permis de faire un petit exemple qui fonctionne plutot bien
http://troxsa.info/index.php?option=com_content&task=view&id@&Itemid=2
a modifier si besoin
Cordialement
--
Mail : http://cerbermail.com/?rIXgaw9Xsl
Site : http://troxsa.info
"Pascal" <scalpanospm@wanadoo.rf> a écrit dans le message de news:
43f4da90$0$21291$8fcfb975@news.wanadoo.fr...
bonjour
Y a t il avec vb 2005 une manière élégante de n'autoriser seulement que
des nombres entiers ou décimaux dans un textbox et retour
arrière(effacement)?
J'ai trouvé ceci : mais ces codes n'offrent pas toutes les conditions
énumérées ci dessus semble-t-il...
Private Sub TextBox1_KeyPress(ByVal sender As Object, ByVal e As
System.Windows.Forms.KeyPressEventArgs) _
Handles TextBox1.KeyPress
If Not Char.IsDigit(e.KeyChar) Then
'Tous les caractères non numériques ne sont pas traités sur le
TextBox.
e.Handled = True
End If
End Sub
Private Sub TextBox_Validate(Cancel As Boolean)
' Vérifie si la valeur entrée est numérique
If Not IsNumeric(TextBox.Text) Then
Cancel = True ' Annule la validation de contrôle
MsgBox "Veuillez entrer un nombre!"
End If
End Sub
Private Sub TextBox_KeyPress(KeyAscii As Integer)
' Si la valeur n'est pas comprise entre 0 et 9 et qu'elle n'est pas un
backspace
If Not ((KeyAscii >= 48 And KeyAscii <= 57) Or KeyAscii = 8) Then
KeyAscii = 0 'on annule la pression sur la touche
End If
j'ai revu le code et m'aperçois que cela ne fonctionne que pour les entiers et pas les décimaux... dommage ! Private Sub TxtBxProposition_KeyPress(ByVal sender As Object, ByVal e As System.Windows.Forms.KeyPressEventArgs) Handles TxtBxProposition.KeyPress
If Asc(e.KeyChar) = Keys.Back Or Asc(e.KeyChar) = Keys.Clear Then
Exit Sub
End If
If IsNumeric(e.KeyChar) = False Then
MsgBox("Ceci n'est pas un numéro")
e.Handled = True
Exit Sub
End If
End Sub
http://www.scalpa.info "TroXsA" a écrit dans le message de news: dt48sp$qbt$
Re bonjour
Je me suis permis de faire un petit exemple qui fonctionne plutot bien http://troxsa.info/index.php?option=com_content&task=view&id@&Itemid=2 a modifier si besoin
Cordialement
--
Mail : http://cerbermail.com/?rIXgaw9Xsl Site : http://troxsa.info
"Pascal" a écrit dans le message de news: 43f4da90$0$21291$
bonjour Y a t il avec vb 2005 une manière élégante de n'autoriser seulement que des nombres entiers ou décimaux dans un textbox et retour arrière(effacement)? J'ai trouvé ceci : mais ces codes n'offrent pas toutes les conditions énumérées ci dessus semble-t-il...
Private Sub TextBox1_KeyPress(ByVal sender As Object, ByVal e As System.Windows.Forms.KeyPressEventArgs) _ Handles TextBox1.KeyPress
If Not Char.IsDigit(e.KeyChar) Then 'Tous les caractères non numériques ne sont pas traités sur le TextBox. e.Handled = True End If
End Sub
Private Sub TextBox_Validate(Cancel As Boolean)
' Vérifie si la valeur entrée est numérique If Not IsNumeric(TextBox.Text) Then Cancel = True ' Annule la validation de contrôle MsgBox "Veuillez entrer un nombre!" End If
End Sub
Private Sub TextBox_KeyPress(KeyAscii As Integer)
' Si la valeur n'est pas comprise entre 0 et 9 et qu'elle n'est pas un backspace If Not ((KeyAscii >= 48 And KeyAscii <= 57) Or KeyAscii = 8) Then KeyAscii = 0 'on annule la pression sur la touche End If
End Sub
http://www.scalpa.info
TroXsA
re bonjour :)
Voulez vous que je face la petite modication pour le decimale ? c'est tres simple a faire ! faut ajouté une petite condition et le tour est joué
@+
re bonjour :)
Voulez vous que je face la petite modication pour le decimale ?
c'est tres simple a faire ! faut ajouté une petite condition et le
tour est joué
Voulez vous que je face la petite modication pour le decimale ? c'est tres simple a faire ! faut ajouté une petite condition et le tour est joué
@+
Pascal
bonjour merci de votre proposition : étant grand débutant je suis preneur de tout ce qui peut me faire avancer...
http://www.scalpa.info "TroXsA" a écrit dans le message de news:
re bonjour :)
Voulez vous que je face la petite modication pour le decimale ? c'est tres simple a faire ! faut ajouté une petite condition et le tour est joué
@+
bonjour
merci de votre proposition : étant grand débutant je suis preneur de tout ce
qui peut me faire avancer...
http://www.scalpa.info
"TroXsA" <troxsa@gmail.com> a écrit dans le message de news:
1140302804.353709.3590@g14g2000cwa.googlegroups.com...
re bonjour :)
Voulez vous que je face la petite modication pour le decimale ?
c'est tres simple a faire ! faut ajouté une petite condition et le
tour est joué
bonjour merci de votre proposition : étant grand débutant je suis preneur de tout ce qui peut me faire avancer...
http://www.scalpa.info "TroXsA" a écrit dans le message de news:
re bonjour :)
Voulez vous que je face la petite modication pour le decimale ? c'est tres simple a faire ! faut ajouté une petite condition et le tour est joué
@+
TroXsA
Bonjour,
Vu que vous etes en version 2005 le mieux serait quand meme d'utiliser le controle (nouveau controle) MaskedTextBox et dans les propriétés Mask = Numérique pour la virgule mettre un point !
sinon ça donnerais ce code là _______________________________________________________ If Asc(e.KeyChar) = Keys.Back Or Asc(".") Or Asc(",") Then If Asc(e.KeyChar) = Asc(".") Then e.KeyChar = "," End If Exit Sub End If
If IsNumeric(e.KeyChar) = False Then MsgBox("Ceci n'est pas un numéro") e.Handled = True Exit Sub End If
Bonjour,
Vu que vous etes en version 2005 le mieux serait quand meme d'utiliser
le controle (nouveau controle) MaskedTextBox et dans les propriétés
Mask = Numérique pour la virgule mettre un point !
sinon ça donnerais ce code là
_______________________________________________________
If Asc(e.KeyChar) = Keys.Back Or Asc(".") Or Asc(",") Then
If Asc(e.KeyChar) = Asc(".") Then
e.KeyChar = ","
End If
Exit Sub
End If
If IsNumeric(e.KeyChar) = False Then
MsgBox("Ceci n'est pas un numéro")
e.Handled = True
Exit Sub
End If
Vu que vous etes en version 2005 le mieux serait quand meme d'utiliser le controle (nouveau controle) MaskedTextBox et dans les propriétés Mask = Numérique pour la virgule mettre un point !
sinon ça donnerais ce code là _______________________________________________________ If Asc(e.KeyChar) = Keys.Back Or Asc(".") Or Asc(",") Then If Asc(e.KeyChar) = Asc(".") Then e.KeyChar = "," End If Exit Sub End If
If IsNumeric(e.KeyChar) = False Then MsgBox("Ceci n'est pas un numéro") e.Handled = True Exit Sub End If
Thierry HUGUET [MS]
L'idéal serait d'utiliser le contrôle MaskedTextBox au lieu de TextBox.
Thierry HUGUET Microsoft
"Pascal" a écrit dans le message de news: 43f4da90$0$21291$
bonjour Y a t il avec vb 2005 une manière élégante de n'autoriser seulement que des nombres entiers ou décimaux dans un textbox et retour arrière(effacement)? J'ai trouvé ceci : mais ces codes n'offrent pas toutes les conditions énumérées ci dessus semble-t-il...
Private Sub TextBox1_KeyPress(ByVal sender As Object, ByVal e As System.Windows.Forms.KeyPressEventArgs) _ Handles TextBox1.KeyPress
If Not Char.IsDigit(e.KeyChar) Then 'Tous les caractères non numériques ne sont pas traités sur le TextBox. e.Handled = True End If
End Sub
Private Sub TextBox_Validate(Cancel As Boolean)
' Vérifie si la valeur entrée est numérique If Not IsNumeric(TextBox.Text) Then Cancel = True ' Annule la validation de contrôle MsgBox "Veuillez entrer un nombre!" End If
End Sub
Private Sub TextBox_KeyPress(KeyAscii As Integer)
' Si la valeur n'est pas comprise entre 0 et 9 et qu'elle n'est pas un backspace If Not ((KeyAscii >= 48 And KeyAscii <= 57) Or KeyAscii = 8) Then KeyAscii = 0 'on annule la pression sur la touche End If
End Sub
http://www.scalpa.info
L'idéal serait d'utiliser le contrôle MaskedTextBox au lieu de TextBox.
Thierry HUGUET
Microsoft
"Pascal" <scalpanospm@wanadoo.rf> a écrit dans le message de news:
43f4da90$0$21291$8fcfb975@news.wanadoo.fr...
bonjour
Y a t il avec vb 2005 une manière élégante de n'autoriser seulement que
des nombres entiers ou décimaux dans un textbox et retour
arrière(effacement)?
J'ai trouvé ceci : mais ces codes n'offrent pas toutes les conditions
énumérées ci dessus semble-t-il...
Private Sub TextBox1_KeyPress(ByVal sender As Object, ByVal e As
System.Windows.Forms.KeyPressEventArgs) _
Handles TextBox1.KeyPress
If Not Char.IsDigit(e.KeyChar) Then
'Tous les caractères non numériques ne sont pas traités sur le
TextBox.
e.Handled = True
End If
End Sub
Private Sub TextBox_Validate(Cancel As Boolean)
' Vérifie si la valeur entrée est numérique
If Not IsNumeric(TextBox.Text) Then
Cancel = True ' Annule la validation de contrôle
MsgBox "Veuillez entrer un nombre!"
End If
End Sub
Private Sub TextBox_KeyPress(KeyAscii As Integer)
' Si la valeur n'est pas comprise entre 0 et 9 et qu'elle n'est pas un
backspace
If Not ((KeyAscii >= 48 And KeyAscii <= 57) Or KeyAscii = 8) Then
KeyAscii = 0 'on annule la pression sur la touche
End If
L'idéal serait d'utiliser le contrôle MaskedTextBox au lieu de TextBox.
Thierry HUGUET Microsoft
"Pascal" a écrit dans le message de news: 43f4da90$0$21291$
bonjour Y a t il avec vb 2005 une manière élégante de n'autoriser seulement que des nombres entiers ou décimaux dans un textbox et retour arrière(effacement)? J'ai trouvé ceci : mais ces codes n'offrent pas toutes les conditions énumérées ci dessus semble-t-il...
Private Sub TextBox1_KeyPress(ByVal sender As Object, ByVal e As System.Windows.Forms.KeyPressEventArgs) _ Handles TextBox1.KeyPress
If Not Char.IsDigit(e.KeyChar) Then 'Tous les caractères non numériques ne sont pas traités sur le TextBox. e.Handled = True End If
End Sub
Private Sub TextBox_Validate(Cancel As Boolean)
' Vérifie si la valeur entrée est numérique If Not IsNumeric(TextBox.Text) Then Cancel = True ' Annule la validation de contrôle MsgBox "Veuillez entrer un nombre!" End If
End Sub
Private Sub TextBox_KeyPress(KeyAscii As Integer)
' Si la valeur n'est pas comprise entre 0 et 9 et qu'elle n'est pas un backspace If Not ((KeyAscii >= 48 And KeyAscii <= 57) Or KeyAscii = 8) Then KeyAscii = 0 'on annule la pression sur la touche End If
End Sub
http://www.scalpa.info
Pascal
> L'idéal serait d'utiliser le contrôle MaskedTextBox au lieu de TextBox.
C'est vrai seulement quand tu connais la taille et le format du nombre à l'avance...
Thierry HUGUET Microsoft
> L'idéal serait d'utiliser le contrôle MaskedTextBox au lieu de TextBox.
C'est vrai seulement quand tu connais la taille et le format du nombre à
l'avance...