Erreur dans un textbox quand je supprime le texte

Signaler
Messages postés
12
Date d'inscription
dimanche 26 janvier 2003
Statut
Membre
Dernière intervention
9 octobre 2009
-
Messages postés
12
Date d'inscription
dimanche 26 janvier 2003
Statut
Membre
Dernière intervention
9 octobre 2009
-
bonjour je debute avec visual basic.
j'ai un textbox et un label .quand je supprime le texte dans le textbox j'ai une erreur. si quelqu'un peux me donner un coup de main .merci d'avance
voici mon code

Private
Sub TextBox1_TextChanged(
ByVal sender
As System.Object,
ByVal e
As System.EventArgs)
Handles TextBox1.TextChanged

Dim pose
As
String

Dim prix
AsString 100pose TextBox1.Text

Label1.Text = prix * pose

End
SubEnd

Class

11 réponses

Messages postés
372
Date d'inscription
vendredi 27 juillet 2007
Statut
Membre
Dernière intervention
22 juillet 2013
1
Bonjour ,
tu écris:
Dim pose AsString
Dim prix AsString = 100

Il faut écrire plutôt:
Dim pose As String
Dim prix As String = 100

En fait, As et String , c'est 2 mots
A++
Messages postés
7668
Date d'inscription
samedi 5 novembre 2005
Statut
Membre
Dernière intervention
22 août 2014
26
Le code que tu montres, philboris, n'étant pas du VB6 ...===>> je vais voir ailleurs
Messages postés
7741
Date d'inscription
mercredi 1 septembre 2004
Statut
Membre
Dernière intervention
24 septembre 2014
37
dedenet2 > ce n'est pas une erreur de sa part, c'est le copier/coller ici qui merde. Parfois il supprime les espaces, parfois il rajoute des saut de lignes....

philboris > c'est quoi ton message d'erreur ?

---- Sevyc64  (alias Casy) ----<hr size="2" width="100%" /># LE PARTAGE EST NOTRE FORCE #    http://aide-office-vba.monforum.com/index.php
Messages postés
12
Date d'inscription
dimanche 26 janvier 2003
Statut
Membre
Dernière intervention
9 octobre 2009

bonsoir dedenet
le message est La conversion de la chaîne "" en type 'Double' n'est pas valide.
Messages postés
372
Date d'inscription
vendredi 27 juillet 2007
Statut
Membre
Dernière intervention
22 juillet 2013
1
Bonjour ,
casy , tu as raison.Ce n'est pas le problème.J'ai mal lu.
Si je reprend ce code:

pose = TextBox1.Text
Label1.Text = prix * pose

Si il n' a rien dans le TextBox.
Cela veut dire que l'on fait prix * "" = Erreur.
Impossible de multiplier !

il peut écrire par exemple:
---------------------------------
pose = TextBox1.Text
if Len(pose)>0 then
Label1.Text = prix * pose
end if
----------------------------------
A améliorer encore...
A++
Messages postés
13280
Date d'inscription
lundi 13 décembre 2004
Statut
Modérateur
Dernière intervention
3 février 2018
42
topic déplacé de VB6 vers VB.NET !
Messages postés
7741
Date d'inscription
mercredi 1 septembre 2004
Statut
Membre
Dernière intervention
24 septembre 2014
37
Ben le message est clair, tu as une chaine vide que tu essaye de convertir en nombre, et ça VB ne sait pas faire.

Il te faut donc
- soit traiter le cas ou la chaine est vide, pour ne pas tenter de la convertir en nombre (en gros ne pas faire ton calcul)
- soit te débrouiller pour que la chaine ne soit jamais vide.

---- Sevyc64  (alias Casy) ----<hr size="2" width="100%" /># LE PARTAGE EST NOTRE FORCE #    http://aide-office-vba.monforum.com/index.php
Messages postés
840
Date d'inscription
mercredi 22 octobre 2003
Statut
Membre
Dernière intervention
7 janvier 2009
9
Salut,

Perso, pour faire simple, je ferais un Try dans ce genre:
Dim prix As String = 100
Try
    Label1.Text = prix * TextBox1.Text
Catch ex As Exception
    Label1.Text = "Erreur"
End Try
Ca permet aussi de gérer l'erreur qui survient lorsque l'utilisateur entre des lettres dans TextBox1
Messages postés
12
Date d'inscription
dimanche 26 janvier 2003
Statut
Membre
Dernière intervention
9 octobre 2009

bonsoir
merci ,j'essais et je vous tiens au courant.
bon week end
Messages postés
35
Date d'inscription
jeudi 4 octobre 2007
Statut
Membre
Dernière intervention
2 juin 2015

Je pense que ceci peut t'aider aussi:
pose = Val(TextBox1.Text )
Label1.Text = prix * pose 
Les donnée vides sera remplacé par zéro.
Messages postés
12
Date d'inscription
dimanche 26 janvier 2003
Statut
Membre
Dernière intervention
9 octobre 2009

merci johndave
bonne journée