Oppure

Loading
10/01/10 11:23
Daniele93
L' idea mi sembra buona... Ho provato:
Dim Righe() As String = Split(TextBox1.Text, "Totale")
        Dim x As Integer = 1
        For x = 1 To Righe.Length
            totale = totale + CType(Righe(x).Substring(3, 4), Single)
        Next x
        MsgBox(totale.ToString)


Ma mi dice indice oltre i limiti della matrice. Errore che incontro praticamente ogi volta! Però adesso non riesco a capire perchè! Ovviamente perchè righe non contiene stringhe, MA perchè???
aaa
10/01/10 13:02
Alfonso
non so se imposti x=1 perchè non ti interessa il primo elemento dell'array.
Altrimenti per scorrere un array di lenght=3 dovendo partite dal primo che ha indice=0 devi scrivere

For x = 0 To Righe.Length - 1

Poi se imposti un punto di interruzione nella riga

totale = totale + CType(Righe(x).Substring(3, 4), Single)

e guardi cosa contiene Righe(x).Substring(3, 4) vedrai che la substring ha saltato la prima cifra

Righe(x).Substring(3, 4)="2,00"

dovrebbe essere

Righe(x).Substring(2, 5)

ma il valore 5 è giusto solo per cifre xx,xx se la cifra fosse 110,01 perderesti l'ultimo decimale.

Vale il discorso di identificare la posizione della virgola.
aaa
10/01/10 13:12
Daniele93
Scusa non avevo piu scritto ma ho risolto!

Dim Righe() As String = Split(TextBox1.Text, "Totale")
            Dim x As Integer = 1
            For x = 1 To Righe.Length - 1
                totale = totale + CType(Righe(x).Substring(2, 6), Single)
            Next x
            TextBox1.Text = TextBox1.Text + vbNewLine + vbNewLine + "In totale sono stati acquistati prodotti per: " + totale.ToString


Lo lascio in caso a qualcuno serva.

Grazie della pazienza! :k:
Ultima modifica effettuata da Daniele93 10/01/10 13:13
aaa
11/01/10 15:19
Il Totem
Più semplice:
Dim R As New Regex("Totale:\s(?<Numero>[\d\.\,]+)", Multiline)
Dim Totale As Single = 0
For Each M As Match In R.Matches(testo)
  Totale += CType(R.Groups("Numero").Value, Single)
Next
aaa
11/01/10 15:44
Alfonso
Oh Totem!
Fai un edit e cambia <Più semplice> con un altro commento meno frustrante.
Più semplice perchè sono meno righe?
Sarà più semplice per te che sei un pozzo di scienza, ma per me che sono un principiante, prima di arrivare a capire e scrivere quelle 5 righe passerà ancora moooolto tempo.
aaa
11/01/10 15:52
Daniele93
Sono nella tua stessa posizione, ma siccome il problema l' avevo risolto provero a vedere come funziona il codice di totem così imparo qualcosa no?

Grazie a tutti e 2 comunque!!!:k:
aaa
11/01/10 16:07
Alfonso
Naturalmente impariamo qualcosa.
Beh, sarei stato più contento se il commento fosse stato tipo <Un suggerimento:>
aaa
12/01/10 13:37
Il Totem
Ok, mi correggo... diciamo "più elegante" :rotfl:
aaa