Foros del Web » Programación para mayores de 30 ;) » Programación General » Visual Basic clásico »

tipo texto a numerico con decimales

Estas en el tema de tipo texto a numerico con decimales en el foro de Visual Basic clásico en Foros del Web. Hola de nuevo: Ultimamente estoy aki todo el día... Alguien sabe cómo puedo hacer para pasar un texto a número pero con decimales que luego ...
  #1 (permalink)  
Antiguo 11/07/2006, 03:20
 
Fecha de Ingreso: marzo-2005
Mensajes: 276
Antigüedad: 19 años, 2 meses
Puntos: 0
Pregunta tipo texto a numerico con decimales

Hola de nuevo:
Ultimamente estoy aki todo el día...
Alguien sabe cómo puedo hacer para pasar un texto a número pero con decimales que luego tengo q sumar??
utilizo la función val pero si el texto es 10.20 + 11.20 = 21.40 me devuelve solo 21...
  #2 (permalink)  
Antiguo 11/07/2006, 04:19
Avatar de Bacarra  
Fecha de Ingreso: julio-2006
Ubicación: España
Mensajes: 10
Antigüedad: 17 años, 9 meses
Puntos: 0
El problema viene dado por la configuracion regional del pc,
dependiendo de si el separdor de miles es una coma o un punto:




'configuracion con coma
suma = Val(Replace(Text1.Text, ",", ".")) + Val(Replace(Text2.Text, ",", "."))



'configuracion con punto
suma = Val(Replace(Text1.Text, ".", ",")) + Val(Replace(Text2.Text, ".", ","))

He utilizado 2 cajas de texto (text1 y text2) como ejmplo, puedes poner en su lugar vaiables o valores entre comillas: Val(Replace("10,25", ".", ","))


Saludos.
  #3 (permalink)  
Antiguo 11/07/2006, 04:20
Avatar de peloteitor  
Fecha de Ingreso: noviembre-2003
Ubicación: Madrid
Mensajes: 849
Antigüedad: 20 años, 5 meses
Puntos: 1
Seguramente estás conviertiendo el texto a entero. Recuerda que los números enteros no tienen decimales, por eso te sale 21. Tienes que convertirlo a un tipo que si tenga decimales, como long.

Saludos.
__________________
El sexo sin amor es una experiencia vacía. Pero como experiencia vacía es una de las mejores.

Woody Allen
  #4 (permalink)  
Antiguo 11/07/2006, 05:18
 
Fecha de Ingreso: marzo-2005
Mensajes: 276
Antigüedad: 19 años, 2 meses
Puntos: 0
Gracias chicos, yo encontre tb otra solución lo que hice fue un Cdbl(val(importe.text))
  #5 (permalink)  
Antiguo 11/07/2006, 12:37
Avatar de [EX3]  
Fecha de Ingreso: marzo-2006
Ubicación: Fuenlabrada, Madrid
Mensajes: 203
Antigüedad: 18 años, 1 mes
Puntos: 1
Cita:
Iniciado por Jennifer_munn
Gracias chicos, yo encontre tb otra solución lo que hice fue un Cdbl(val(importe.text))
Te sobra la conversion de la funcion CDbl() ya que la funcion Val() devuelve un Double.

Salu2...
__________________
Proyecto dx_lib32 (http://dxlib32.se32.com) Libreria DLL ActiveX para el desarollo de juegos y programas multimedia en Visual Basic 6.0 con la potencia de DirectX

Dice un dicho que "el que calla otorga". En internet tenemos otro que dice "nunca alimentes a un troll" que viene a decir "dejale hablar solo que se ya se cansara de incordiar". Solo los necios creen tener la razon con la ultima palabra.

  #6 (permalink)  
Antiguo 12/07/2006, 01:07
 
Fecha de Ingreso: marzo-2005
Mensajes: 276
Antigüedad: 19 años, 2 meses
Puntos: 0
Pues no sé si me sobra o no pero poniendo val me quitaba los decimales y poniendo solo cdbl me daba un error y con los dos es como me funciona...
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 12:50.