Foros del Web » Programación para mayores de 30 ;) » .NET »

Los decimales se los pasa por donde yo me se...

Estas en el tema de Los decimales se los pasa por donde yo me se... en el foro de .NET en Foros del Web. Tengo tres TextBox. En estos siempre hay un número con el formato 123,45 El tema es que por otro motivo los TextBox pueden tener dos ...
  #1 (permalink)  
Antiguo 13/09/2009, 04:16
 
Fecha de Ingreso: agosto-2008
Mensajes: 89
Antigüedad: 15 años, 8 meses
Puntos: 1
De acuerdo Los decimales se los pasa por donde yo me se...

Tengo tres TextBox. En estos siempre hay un número con el formato 123,45
El tema es que por otro motivo los TextBox pueden tener dos o tres decimales.
Bueno, el tema: tengo otro TextBox que es la suma de esos tres, y al hacer la suma los suma sin tener en cuenta sus decimales, de tal forma que ni si quiera redondea. Solo tiene en cuenta lo que esta a la izquierda de la coma. Esto es un incordio porque por ejemplo el número 43.99 te lo deja en 43, cuando debería ser 44.
Alguien sabe por qué pasa?
  #2 (permalink)  
Antiguo 13/09/2009, 04:18
 
Fecha de Ingreso: agosto-2008
Mensajes: 89
Antigüedad: 15 años, 8 meses
Puntos: 1
Respuesta: Los decimales se los pasa por donde yo me se...

NOTA: Lo sumo así:
Textbox.text = val(algo.text) + val(algo2.text) + val(algo3.text)
  #3 (permalink)  
Antiguo 13/09/2009, 04:31
 
Fecha de Ingreso: agosto-2008
Mensajes: 89
Antigüedad: 15 años, 8 meses
Puntos: 1
Respuesta: Los decimales se los pasa por donde yo me se...

He encontrado esto:

Dim suma_total as decimal
me.precio_total.text = suma_total.Round(suma_total, 2)

Alguien sabe como lo puedo aplicar¿?

El tema es que no consigo hacerlo funcionar....
  #4 (permalink)  
Antiguo 13/09/2009, 16:41
Avatar de Peterpay
Colaborador
 
Fecha de Ingreso: septiembre-2007
Ubicación: San Francisco, United States
Mensajes: 3.858
Antigüedad: 16 años, 8 meses
Puntos: 87
Respuesta: Los decimales se los pasa por donde yo me se...

prueba usando Math.Ceiling

ojo si estas ya en vb.net deja el val y trata e usar Convert o Douple.Parse o TryParse y asi con todos tus conversioens texto a valor menos margen de error.
__________________
Curso WF4
http://cursos.gurudotnet.com/ DF
Aprende HTML5
  #5 (permalink)  
Antiguo 14/09/2009, 01:06
 
Fecha de Ingreso: septiembre-2009
Ubicación: Galicia
Mensajes: 111
Antigüedad: 14 años, 8 meses
Puntos: 3
Respuesta: Los decimales se los pasa por donde yo me se...

Hola!

utiliza esto:

Textbox.text = cDbl(algo.text) + cDbl(algo2.text) + cDbl(algo3.text)


Según el msdn, el val solo reconoce el punto como separador decimal, y ese debe ser tu problema.

Saludos!
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta




La zona horaria es GMT -6. Ahora son las 14:29.