Foro de elhacker.net

Programación => Programación Visual Basic => Mensaje iniciado por: RiasChan en 3 Abril 2018, 22:57 pm



Título: Sumar decimales desde una lista a un texbox
Publicado por: RiasChan en 3 Abril 2018, 22:57 pm
Este codigo me vale para sumar numeros decimales y enteros en un listbox, y luego mostrar la suma en un texbox.

Dim i
Dim total
total = 0
For i = 0 To List11.ListCount - 1
total = total + CDbl(List11.List(i))
Next i
txtPrecioTotal.Text = total
End Sub

El problema es que esos numeros estan mezclados con letras (primero antes que nada va el numero) Por lo que si le pongo VAL, me suma aunque tenga letras, pero no me suma los decimales. Y si le pongo CDBL, no anda. Si le saco las letras y le dejo el CBDL, si me suma y con decimales.

Lo que necesito es que me sume enteros, y decimales, incluso haya palabras mezcladas luego de los primeros caracteres que vendrian a ser los numeros a sumar


Título: Re: Sumar decimales desde una lista a un texbox
Publicado por: MCKSys Argentina en 4 Abril 2018, 01:30 am
Hola!

Si usas VAL, asegúrate de que el marcador del punto decimal sea el punto ".". Val sólo reconoce ese caracter como separador decimal.

Cdbl si te reconoce en base a la configuración regional del PC, pero tiene el problema que menciona.

Una solución, es reemplazar las comas "," por puntos "." antes de usar Val. Eso es si los datos que tienes tienen la coma como separador decimal.

Saludos!


Título: Re: Sumar decimales desde una lista a un texbox
Publicado por: RiasChan en 14 Abril 2018, 03:27 am
Hola. Al final lo solucione poniendo todo en un ListView. Ahora tengo otro problema q pasaré a abrir otro hilo, gracias!