JuNaNoR
Messages postés3Date d'inscriptiondimanche 3 septembre 2006StatutMembreDernière intervention 3 septembre 2006
-
3 sept. 2006 à 13:28
cs_Jack
Messages postés14006Date d'inscriptionsamedi 29 décembre 2001StatutModérateurDernière intervention28 août 2015
-
6 sept. 2006 à 19:24
bonjours a tous
je suis newbie dans la programmation, et j'aurais voulu avoir quelque tuyaux de la par de programmeurs plus confirmés :
dans mon programme, je voudrais entrer differentes valeur ( que des nombres ) dans des cases prévues a cet effet, les traiter ( addition ), et afficher le resultat dans une auter case. j'ai pensé a des textbox, mais lorsque je stock la valeur de ceux ci et que je demande d'afficher le resultat dans une nouvelle textbox, au lieu d'effectuer un calcul, il me met mes valeurs a la suite dans la case, bref, j'aurais voulu savoir comment effectuer des calculs de valeurs ( nombres ) a partir de données transmises par l'utilisateur.
merci d'avance pour vos reponses !!
JessicaR44
Messages postés116Date d'inscriptionmardi 8 août 2006StatutMembreDernière intervention29 septembre 2013 3 sept. 2006 à 13:54
Dans ton cas, le + a concaténé des strings plutôt qu'additionné leurs valeurs.
Additionne la valeur des tes textebox:
textTotal.text = val(text1.text) + val(text2.text) + val(text3.text)
ou, au lieu de val(), Cint(), Cdbl(), Clng(), ...
Les puristes convertiront également TextTotal.text
cs_Jack
Messages postés14006Date d'inscriptionsamedi 29 décembre 2001StatutModérateurDernière intervention28 août 201579 3 sept. 2006 à 20:44
Nota : Si le contenu d'une des maTextBox contient une lettre, la fonction Val renverra 0, donc, ton calcul sera faux.
Regarde parmi les sources du site des codes qui parlent de calculettes, il y en a des tonnes : Tu apprendras les astuces
cs_Jack
Messages postés14006Date d'inscriptionsamedi 29 décembre 2001StatutModérateurDernière intervention28 août 201579 3 sept. 2006 à 20:42
Salut
Pour faciliter le travail, tu as intérêt à indexer les maTextBox (tes "cases") dans lesquels tu écriras les données.
Créé le 1er maTextBox et vas dans la propriété Index écrire le chiffre 0
Ensuite, Copie/Colle ce TextBox sur ta forme. VB incrémentera seul la valeur "Index".
Pour lire le contenu du 3ème TextBox, il te suffira de faire maTextBox(2).Text (2 car le 1er est en 0)
Ensuite, pour faire la somme, il te suffit de créer une boucle :
Résultat = 0
For r = 0 To 9 ' en supposant que tu aies créé 10 maTextBox (de 0 à 9)
Résultat = Résultat + Val(maTextBox(i).Text)
Next r
maTextBoxRésultat.Text = CStr(Résultat)
Vala
Jack, MVP VB
NB : Je ne répondrai pas aux messages privés
Champion du monde de boule de cristal - 2005 Le savoir est la seule matière qui s'accro
Vous n’avez pas trouvé la réponse que vous recherchez ?
JuNaNoR
Messages postés3Date d'inscriptiondimanche 3 septembre 2006StatutMembreDernière intervention 3 septembre 2006 3 sept. 2006 à 23:04
merci a tous pour vos reponses elle m'on permies d'avancer d'un grand bon dans mon programme.
cependant, Jack, j'ai une question dans ton code, comment le programme sait-il quelle textbox il doit ajouter ( ne pas ajouter toujours la valeur de la même textbox,mais a chaque fois passer a la suivante )
JuNaNoR
Messages postés3Date d'inscriptiondimanche 3 septembre 2006StatutMembreDernière intervention 3 septembre 2006 3 sept. 2006 à 23:07
ps, j'allais oublier, qu'est-ce que veut dire cette ligne s'il vous plait ? ==> "maTextBoxRésultat.Text = CStr(Résultat)" ainsi que ces fonctions ? ==>
"Cint(), Cdbl(), Clng(), ..."
cs_Jack
Messages postés14006Date d'inscriptionsamedi 29 décembre 2001StatutModérateurDernière intervention28 août 201579 6 sept. 2006 à 19:24
La réponse à ta dernière question est dans ma première réponse : l'indexation de controle TextBox (je t'ai tout détailler)
CStr sert à convertir des chiffres en String - Même si ce n'ai pas obligatoire, cela évite des conflits (un jour ou l'autre) :
Ton résultat est un chiffre.
Ce qu'on entre dans une TextBox (qui porte bien son nom), est du texte.
Pour convertir un chiffre en chaine, c'est CStr
Comme l'a dit Jessica, regarde dans l'aide de VB ou sur www.msdn.com