La Web del Programador: Comunidad de Programadores
 
    Pregunta:  60784 - PROBLEMAS CON DECIMALES ROUND Y FORMAT NO FUNCIONAN
Autor:  marco ugalde
que hongo,
tengo un problema, estoy haciendo una aplicacion con vb en excel para una CNC, cuando obtengo un valor de una celda para trabajar con el y cuando creo el archivo global de texto los numeros enteros no concervan sus decimales, necesito que concerve extrictamente tres decimales si no la maquina donde sera trasladado el archivo no interpretara correctamente los valores. la funcion format me manda error (me dice que no coinciden los tipos, y si es una variable numerica) y la funcion round no me muestra las decimales. la cuestion es que cuando convierto los numeros a texto es cuando se pierden mis preciosas decimales

  Respuesta:  Arturo Pacheco
Utiliza Format(Text1.Text, "0.000") para obtene un campo de texto con 3 decimales (de no existir decimales acbaría con ,000)


con esto SIEMPRE QUE Text1.Text SEA NUMERICO obtendras un campo string con los 3 decimales precedidos de la coma

Dim campo as String
Dim campo1 as Long
Dim campo2 as Double

campo = "1.2345,987"
Format(campo, "0.000") ------ > "12345,987"

campo = "12345"
Format(campo, "0.000") ------ > "12345,000"

campo1 = 1.2345
Format(campo, "0.000") ------ > "12345,000"

campo2 = 1.2345,987
Format(campo, "0.000") ------ > "12345,987"