OVH Cloud OVH Cloud

Configuration d'un TextBox

5 réponses
Avatar
imej-clavier
Bonjour,
Quelqu'un peut-il me dire comment faire pour configurer (ou autre action)
une zone de texte pour que celle-ci
accepte les nombres avec un chiffre après la virgule ?

Les TextBox dont je me sers n'acceptent que les nombres entiers.

D'avance merci,

Jean-michel

5 réponses

Avatar
ClémentMarcotte
Bonjour,

C'est-tu parce que tu as la virgule comme séparateur décimal dans tes
paramères régionnaux et que tu as un val(textbox1.value) ?

Si c'est oui, tu as le choix entre mettre le point comme séparateur décimal
ou remplacer val par
Clng(textbox1.value) ou même cdbl(textbox1).value

Sinon, va falloir fournir ton code, parce qu'il n'y a pas vraiment d'autre
explication logique qui jaillisse.


"imej-clavier" a écrit dans le message de
news:
Bonjour,
Quelqu'un peut-il me dire comment faire pour configurer (ou autre action)
une zone de texte pour que celle-ci
accepte les nombres avec un chiffre après la virgule ?

Les TextBox dont je me sers n'acceptent que les nombres entiers.

D'avance merci,

Jean-michel




Avatar
imej-clavier
"ClémentMarcotte" a écrit dans le message
news:
Bonjour,

C'est-tu parce que tu as la virgule comme séparateur décimal dans tes
paramères régionnaux et que tu as un val(textbox1.value) ?

Si c'est oui, tu as le choix entre mettre le point comme séparateur
décimal

ou remplacer val par
Clng(textbox1.value) ou même cdbl(textbox1).value

Sinon, va falloir fournir ton code, parce qu'il n'y a pas vraiment d'autre
explication logique qui jaillisse.


"imej-clavier" a écrit dans le message de
news:
Bonjour,
Quelqu'un peut-il me dire comment faire pour configurer (ou autre
action)


une zone de texte pour que celle-ci
accepte les nombres avec un chiffre après la virgule ?

Les TextBox dont je me sers n'acceptent que les nombres entiers.

D'avance merci,

Jean-michel
Excuse-moi si je me permets de t'envoyer une partie de mon code. Peux
t'être cela te permettra t-il de


comprendre le problème.
While CLng(TxtNbre.Text) <> PrixPomme
Essai1 = 1


Essai2 = 1
If CLng(TxtNbre.Text) < PrixPomme Then
txtPlusMoins.Text = "Plus Grand"
lstTirage.AddItem TxtNbre.Text
Essai1 = Essai1 + 1
ElseIf CLng(TxtNbre.Text) > PrixPomme Then
txtPlusMoins.Text = "Plus Petit"
lstTirage.AddItem TxtNbre.Text
Essai2 = Essai2 + 1
EssaiTot = Essai1 + Essai2
End If
Call cmdRAZ_Click
If CLng(TxtNbre.Text) = PrixPomme Then
MsgBox "Vous avez gagnez en " & EssaiTot & " essai !!!", _
vbInformation, "Bravo"
End If
Wend

Private Sub cmdRAZ_Click()

Dim AutreChiffre As Integer
TxtNbre.Text = ""
EssaiTot = 0
Essai1 = 1
Essai2 = 1
AutreChiffre = InputBox("Saisissez un chiffre ")
TxtNbre.Text = AutreChiffre
End Sub
Dans l'espoir d'une réponse, d'avance merci,


Jean-michel




Avatar
LSteph
Bonjour "*imej-clavier*",

Oui, in France (conventionaly solo) les décimales c'est après la virgule
et non le point qui sert pour les points d'indices
un textbox c'est pour du texte
même pour écrire un décimal ex: [b3] au bon format contient et affiche 8,23

Private Sub UserForm_Initialize()
TextBox1 = [b3]
End Sub

le textbox renvoie 8,23

lSteph

"imej-clavier" a écrit dans le message de news:

Bonjour,
Quelqu'un peut-il me dire comment faire pour configurer (ou autre action)
une zone de texte pour que celle-ci
accepte les nombres avec un chiffre après la virgule ?

Les TextBox dont je me sers n'acceptent que les nombres entiers.

D'avance merci,

Jean-michel




Avatar
docm
Bonjour.

CLng(TxtNbre.Text) convertit le texte en variable de type LONG qui ne
contient que des nombres entiers.
Utilise Cdbl (TxtNbre.Text) pour le convertir en variable de type DOUBLE
qui contient ausi les décimales.

docm


"imej-clavier" a écrit dans le message news:
#

"ClémentMarcotte" a écrit dans le message
news:
Bonjour,

C'est-tu parce que tu as la virgule comme séparateur décimal dans tes
paramères régionnaux et que tu as un val(textbox1.value) ?

Si c'est oui, tu as le choix entre mettre le point comme séparateur
décimal

ou remplacer val par
Clng(textbox1.value) ou même cdbl(textbox1).value

Sinon, va falloir fournir ton code, parce qu'il n'y a pas vraiment
d'autre


explication logique qui jaillisse.


"imej-clavier" a écrit dans le message de
news:
Bonjour,
Quelqu'un peut-il me dire comment faire pour configurer (ou autre
action)


une zone de texte pour que celle-ci
accepte les nombres avec un chiffre après la virgule ?

Les TextBox dont je me sers n'acceptent que les nombres entiers.

D'avance merci,


Jean-michel



Excuse-moi si je me permets de t'envoyer une partie de mon code. Peux
t'être cela te permettra t-il de


comprendre le problème.
While CLng(TxtNbre.Text) <> PrixPomme
Essai1 = 1


Essai2 = 1
If CLng(TxtNbre.Text) < PrixPomme Then
txtPlusMoins.Text = "Plus Grand"
lstTirage.AddItem TxtNbre.Text
Essai1 = Essai1 + 1
ElseIf CLng(TxtNbre.Text) > PrixPomme Then
txtPlusMoins.Text = "Plus Petit"
lstTirage.AddItem TxtNbre.Text
Essai2 = Essai2 + 1
EssaiTot = Essai1 + Essai2
End If
Call cmdRAZ_Click
If CLng(TxtNbre.Text) = PrixPomme Then
MsgBox "Vous avez gagnez en " & EssaiTot & " essai !!!", _
vbInformation, "Bravo"
End If
Wend

Private Sub cmdRAZ_Click()

Dim AutreChiffre As Integer
TxtNbre.Text = ""
EssaiTot = 0
Essai1 = 1
Essai2 = 1
AutreChiffre = InputBox("Saisissez un chiffre ")
TxtNbre.Text = AutreChiffre
End Sub
Dans l'espoir d'une réponse, d'avance merci,


Jean-michel








Avatar
imej-clavier
"docm" a écrit dans le message news:
u#
Bonjour.

CLng(TxtNbre.Text) convertit le texte en variable de type LONG qui ne
contient que des nombres entiers.
Utilise Cdbl (TxtNbre.Text) pour le convertir en variable de type DOUBLE
qui contient ausi les décimales.

docm


"imej-clavier" a écrit dans le message news:
#

"ClémentMarcotte" a écrit dans le
message


news:
Bonjour,

C'est-tu parce que tu as la virgule comme séparateur décimal dans tes
paramères régionnaux et que tu as un val(textbox1.value) ?

Si c'est oui, tu as le choix entre mettre le point comme séparateur
décimal

ou remplacer val par
Clng(textbox1.value) ou même cdbl(textbox1).value

Sinon, va falloir fournir ton code, parce qu'il n'y a pas vraiment
d'autre


explication logique qui jaillisse.


"imej-clavier" a écrit dans le message de
news:
Bonjour,
Quelqu'un peut-il me dire comment faire pour configurer (ou autre
action)


une zone de texte pour que celle-ci
accepte les nombres avec un chiffre après la virgule ?

Les TextBox dont je me sers n'acceptent que les nombres entiers.

D'avance merci,


Jean-michel



Excuse-moi si je me permets de t'envoyer une partie de mon code. Peux
t'être cela te permettra t-il de


comprendre le problème.
While CLng(TxtNbre.Text) <> PrixPomme
Essai1 = 1


Essai2 = 1
If CLng(TxtNbre.Text) < PrixPomme Then
txtPlusMoins.Text = "Plus Grand"
lstTirage.AddItem TxtNbre.Text
Essai1 = Essai1 + 1
ElseIf CLng(TxtNbre.Text) > PrixPomme Then
txtPlusMoins.Text = "Plus Petit"
lstTirage.AddItem TxtNbre.Text
Essai2 = Essai2 + 1
EssaiTot = Essai1 + Essai2
End If
Call cmdRAZ_Click
If CLng(TxtNbre.Text) = PrixPomme Then
MsgBox "Vous avez gagnez en " & EssaiTot & " essai !!!", _
vbInformation, "Bravo"
End If
Wend

Private Sub cmdRAZ_Click()

Dim AutreChiffre As Integer
TxtNbre.Text = ""
EssaiTot = 0
Essai1 = 1
Essai2 = 1
AutreChiffre = InputBox("Saisissez un chiffre ")
TxtNbre.Text = AutreChiffre
End Sub
Dans l'espoir d'une réponse, d'avance merci,


Jean-michel
J'ai utilisé Cdbl (TxtNbre.Text) .
Celà fonctionne, mais uniquement pour le 1er nombre (seul le 1er nombre a



une virgule). Pour les autres, cela
arrondit.
(Si cela peut avoir une incidence : j'ai déclaré comme constante PrixPomme :
Const PrixPomme = 2.2 au-dessous
d'Option Explicit).
Quelqu'un peut-il me répondre ?
D'avance merci,
Jean-michel