begin process at 2008 07 04 23:59:33
1 204 994 membres
509 nouveaux aujourd'hui
14 118 membres club

Vous ne trouvez pas de réponse à votre problème ? Alors posez la question dans le forum.
Souvenez-vous qu'il n'y a jamais de question bête, mais rester dans l'ignorance parce que l'on n'ose pas poser une question, ça c'est une erreur !

Sujet : Additionner les Nombres contenus dans chaque ligne d'une Textbox [ Algorithme / Maths ] (Dri60)

Additionner les Nombres contenus dans chaque ligne d'une Textbox le 21/03/2008 21:10:20

Dri60
Bonjour, j'ai une RichTextbox qui contient ceci :

Article1    1.23 €
Article2    5.84 €
Article122    4.25 €
...

Le nombre d'Articles peut varier. Je souhaiterais additionner les Prix de chacune des lignes pour obtenir un Résultat. Je pensai supprimer ce qu'il y avant et après chaque nombre mais la longeur du Nom de l'Article peut varier et le nombre de lignes aussi. Comment faut-il faire ? Merci.
En attendant je continue à chercher

 Dri60


Re : Additionner les Nombres contenus dans chaque ligne d'une Textbox le 22/03/2008 13:28:54

Galain
Membre Club
Réponse acceptée !
Salut Dri60

soit chn = "Article1    1.23 €"  ( c'est une String qui contient ta première ligne)

Dim valeur as String  ' valeur chaine en euros
dim prix as Decimal  ' le prix

' on récupère valeur à partir du 1° espace et on supprime les espaces à gauche
valeur = chn.substring(chn.indexof(" ")).trimstart
' on enléve l'espace à droite et le signe €
valeur = chn.substring(0,chn.length -2)
' on convertit en decimal pour récupérer le prix
prix = Convert.ToDec(chn)

GRENIER Alain

Re : Additionner les Nombres contenus dans chaque ligne d'une Textbox le 22/03/2008 23:00:10

Dri60
Merci de ta réponse, mais pour ensuite qu'il retienne tout les prix puis qu'il les additionnes, comment faut-il faire ?

 Dri60


Re : Additionner les Nombres contenus dans chaque ligne d'une Textbox le 22/03/2008 23:21:46

Galain
Membre Club
Réponse acceptée !
Tu initialises le prix total à 0 et tu fais une boucle pour chaque ligne de ta RichTextbox où tu ajoutes le prix de l'article

total =0
For i = 1 to nombre de ligne
    total = total + prix de l'article
Next i

GRENIER Alain

Re : Additionner les Nombres contenus dans chaque ligne d'une Textbox le 22/03/2008 23:24:45

Dri60
Ok merci

 Dri60


Re : Additionner les Nombres contenus dans chaque ligne d'une Textbox le 23/03/2008 19:21:37

Dri60
Euh je crois que j'ai un problème. Voici le Code :

Public

Sub Calcul_Total()

   Dim Total AsDecimal

   Dim i

   Dim Prix

   Dim Nb_Ligne AsInteger

   Total = 0

   Nb_Ligne = RichTextBox1.GetLineFromCharIndex(0) - 4

   For i = 1 To Nb_Ligne

      Total = Total + Prix

   Next i

   RichTextBox1.Text = RichTextBox1.Text & vbCrLf & "Total = " & Total & " €" & vbCrLf & "Merci de votre Visite"

EndSub

Et quand j'exécute, il me met comme résultat 0. J'ai du me tromper  Comment fait-on ? Merci

 Dri60


Re : Additionner les Nombres contenus dans chaque ligne d'une Textbox le 23/03/2008 21:17:53

Galain
Membre Club
Réponse acceptée !
Sub Calcul_Total()

   Dim Total AsDecimal

   Dim i as quoi ?

   Dim Prix as quoi ?

   Dim Nb_Ligne AsInteger

   Total = 0

   Nb_Ligne = RichTextBox1.GetLineFromCharIndex(0) - 4 ' doit donner le nombre de lignes de ta RichtextBox ( à vérifier)

   For i = 1 To Nb_Ligne

     ' ici il faut récupérer la ligne et en extraire le prix de l'article ( voir mon premier post)

     Total = Total + Prix

   Next i

   RichTextBox1.Text = RichTextBox1.Text & vbCrLf & "Total = " & Total & " €" & vbCrLf & "Merci de votre Visite"

EndSub



GRENIER Alain

Re : Additionner les Nombres contenus dans chaque ligne d'une Textbox le 23/03/2008 22:09:56

Dri60
J'ai trouvé, l'erreur vient de Nb_Ligne = RichTextBox1.GetLineFromCharIndex(0) le nombre retourné est toujours 0. Merci de ton aide.

 Dri60


Re : Additionner les Nombres contenus dans chaque ligne d'une Textbox le 23/03/2008 22:32:59

Dri60
En fait je crois que l'erreur vient de la Richtextbox. Même en mettant un autre code, sa donne toujours 0. Voici le Code :

Public

Sub Calcul_Total()

   Dim Total AsDecimal

   Dim i AsDecimal

   Dim Prix AsDecimal

   Dim Nb_Ligne AsInteger

   Prix = Lbl_Prix.Text

   Total = 0

   Dim i2 AsInteger

   For i2 = 1 To Len(RichTextBox1.Text)

   If Mid(RichTextBox1.Text, i2, 1) = vbCr Then Nb_Ligne = Nb_Ligne + 1

   Next i2

   MsgBox(Nb_Ligne)

   Label_Test.Text = Nb_Ligne

   For i = 1 To Nb_Ligne

   Total = Total + Prix

   Next i

   RichTextBox1.Text = RichTextBox1.Text & vbCrLf & "Total = " & Total & " €" & vbCrLf & "Merci de votre Visite"

EndSub



 Dri60


Re : Additionner les Nombres contenus dans chaque ligne d'une Textbox le 23/03/2008 23:09:46

Galain
Membre Club
Sub Calcul_Total()

   Dim Total AsDecimal

   Dim i AsDecimal

   Dim Prix AsDecimal

   Dim Nb_Ligne AsInteger

   Prix =Lbl_Prix

   Total = 0

   Dim i2 AsInteger

   For i2 = 1 To Len(RichTextBox1.Text)

   If Mid(RichTextBox1.Text, i2, 1) = vbCrLF  Then Nb_Ligne = Nb_Ligne + 1

   Next i2

   MsgBox(Nb_Ligne) ' vérifie si le nombre de lignes est correct

   Label_Test.Text = Nb_Ligne

   For i = 1 To Nb_Ligne

            ' Récupère la ligne n° i et extrait le prix ( voir 1° post)

   Total = Total + Prix

   Next i

   RichTextBox1.Text = RichTextBox1.Text & vbCrLf & "Total = " & Total & " €" & vbCrLf & "Merci de votre Visite"

EndSub



GRENIER Alain


[Page 1 Page 2]
Classé sous : ligne, nombre, nombres, additionner, contenus

Participer à cet échange

Pub



Appels d'offres

CalendriCode

Juillet 2008
LMMJVSD
 123456
78910111213
14151617181920
21222324252627
28293031   

VS Express FR Gratuit !

VS Express en français et 100% gratuit !

Téléchargements

Boutique

Boutique de goodies CodeS-SourceS