imgKappa
Messages postés44Date d'inscriptionvendredi 14 mars 2003StatutMembreDernière intervention28 avril 2007
-
23 janv. 2007 à 10:06
cs_Exploreur
Messages postés4821Date d'inscriptionlundi 11 novembre 2002StatutMembreDernière intervention15 novembre 2016
-
23 janv. 2007 à 14:08
Bonjour a tous, je deviens de plus en plus stupide
Voici mon probleme:
J'ai une form avec trois textbox, Text1(0) & Text1(1), et Text2
Je veux faire l'addition de text1 dans text2,
Sachant que je saisie les chiffres au clavier numerique,
Je veux que quand je saisie "12.3" soit inscrit "12.30"
puis pouvoir faire l'addition et le resultat afficher dans Text2 soit "24.60"
Je bloque la dessus, j'ai un trou de memoire, plutot un grouffre
imgKappa
Messages postés44Date d'inscriptionvendredi 14 mars 2003StatutMembreDernière intervention28 avril 2007 23 janv. 2007 à 13:57
Voici le code nettoyé, avec l'ajout des conseils de jmfmarques
Voila quelque chose propes et claire, du moins je l'espére
Private Sub Command1_Click()
For Boucle = 0 To 1
Val3 = Val3 + Val(Text1(Boucle).Text)
Text1(Boucle).Text = Format(Val(Text1(Boucle).Text), "0.00")
Next
Text2.Text = Val3
Text2.Text = Format(Text2.Text, "0.00")
End Sub
imgKappa
Messages postés44Date d'inscriptionvendredi 14 mars 2003StatutMembreDernière intervention28 avril 2007 23 janv. 2007 à 11:16
Voila comme cela c'est OK
Merci à Drikce06 et à Exploreur
Maintenant il le faire sur 17 Textbox(s),
N'aurais-je pas plutot intérrer que faire un tableau en memoire pour effectuer l'addition pour les 17 Textbox
Private Sub Command1_Click()
'Calcul de l'addition
Text2 = Val(Text1(0)) + Val(Text1(1))
'Mise en format des TextBox(s)
Text1(0) = Format(Val(Text1(0).Text), "0.00")
Text1(1) = Format(Val(Text1(1).Text), "0.00")
Text2 = Format(Text2, "0.00")
End Sub
Private Sub Form_Load()
Dim Val1 As String
Dim Val2 As String
Dim Val3 As String
End Sub
jmfmarques
Messages postés7666Date d'inscriptionsamedi 5 novembre 2005StatutMembreDernière intervention22 août 201427 23 janv. 2007 à 11:36
Je ne vais pas te servir un code si simple sur un plateau sans que tu te creuses un peu les méninges...
Tu sais ce qu'es une boucle For... Next ?
(ouvre ton aide en ligne)
Je ne vais pas te faire ton truc, à ce niveau, mais te donner un exemple :
For i = 0 to 4
msgbox i
next i
Regarde ce que celà fait... observe... et demande-toi comment tu pourrais utiliser i pour te référer aux indexes, pris un par un, de tes textboxes à additionner....
Reviens s'il te plait avec au moins un essai de code (plus que simpliste) si tu rencontres un problème de mise en oeuvre, mais fais d'abord cet effort minimum .
imgKappa
Messages postés44Date d'inscriptionvendredi 14 mars 2003StatutMembreDernière intervention28 avril 2007 23 janv. 2007 à 12:12
Voila je ne suis pas si stupide que ça quand meme
Private Sub Command1_Click()
For Boucle = 0 To 1
Val3 = Val3 + Val(Text1(Boucle)) 'Operation d'addition
Text1(Boucle) = Format(Val(Text1(Boucle).Text), "0.00") 'Mise en forme de la TextBox
Next
Text2 = Val3 'Attribution de la variable
Text2 = Format(Text2, "0.00") 'Mise en forme de la TextBox
End Sub
jmfmarques
Messages postés7666Date d'inscriptionsamedi 5 novembre 2005StatutMembreDernière intervention22 août 201427 23 janv. 2007 à 13:06
quand même ......
Il a compris ! Bon !
Juste une discipline à observer :
- savoir écrire systématiquement Text1(x).text quand il le faut (pour ne pas faire travailler inutilement VB)
- savoir donc (même principe) écrire Text2.Text
- savoir valider la/les réponse(s) qui r'ont mis sur ta voie !
Tu as fait là une boucle pour additionner 2 textboxes et il te suffit donc d'augmenter à la valeur que tu veux pour n textboxes
imgKappa
Messages postés44Date d'inscriptionvendredi 14 mars 2003StatutMembreDernière intervention28 avril 2007 23 janv. 2007 à 13:20
Non bien sur je prend ça a la rigolade, non c'est vrai cela fait 5 ans que je n'ai plus fait de VB6,j'etait su du windev, du coup j'ai un peu perdu le fil mais cela reviens,
Merci a tous le monde,
Maintenant je vais pouvoir attaqué la fusion avec word.
imgKappa
Messages postés44Date d'inscriptionvendredi 14 mars 2003StatutMembreDernière intervention28 avril 2007 23 janv. 2007 à 13:26
Voici le code nettoyé, avec l'ajout des conseils de jmfmarques
Private Sub Command1_Click()
For Boucle = 0 To 1
Val3 = Val3 + Val(Text1(Boucle).Text)
Text1(Boucle) = Format(Val(Text1(Boucle).Text), "0.00")
Next
Text2.Text = Val3
Text2.Text = Format(Text2.Text, "0.00")
End Sub
jmfmarques
Messages postés7666Date d'inscriptionsamedi 5 novembre 2005StatutMembreDernière intervention22 août 201427 23 janv. 2007 à 13:29
Parce que si tu ne précises pas la propriété concernée (ici .Text), tu forces VB à analyser le contexte afin de déterminer lui-même de quelle propriété il s'agit vraisemblablement ... tout bêtement... alors qu'il n'aurait aucun temps à perdre si tu lui disais toi-même de quelle propriété il s'agit