Access - Problemas con codigo en eventos

 
Vista:

Problemas con codigo en eventos

Publicado por Rafa (3 intervenciones) el 17/09/2006 16:15:55
Hola, pues lo que me pasa es que en un formulario tengo un boton, que al darle genera un evento y este lo que hace es sumar varios campos y mostrar el resultado en otro campo distinto. Pero el problema es que los valores que suman son numeros con decimales y al dar el resultado hace la suma sin tener en cuenta los decimales. el codigo que tengo es el siguiente:

Total = Val (a) + Val (b), a = 2.2 y b = 3.2, el resultado deberia se 5.4 pero me da 5.

Como puedo resolverlo ??.
Gracias anticipadas.
Valora esta pregunta
Me gusta: Está pregunta es útil y esta claraNo me gusta: Está pregunta no esta clara o no es útil
0
Responder

RE:Problemas con codigo en eventos

Publicado por Pepe (766 intervenciones) el 17/09/2006 18:24:18
Hola Rafa, comprueba el formato del campo donde pones la suma, seguro que no es decimal, o tienes puesto como 0 decimales.

Pepe
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

RE:Problemas con codigo en eventos

Publicado por Rafa (3 intervenciones) el 17/09/2006 18:32:44
Pues no es eso, me sigue redondeando.
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

RE:utiliza la función Suma

Publicado por pepe (766 intervenciones) el 17/09/2006 18:42:10
Rafa, en lugar de utilizar la funcion "val" que devuelve el valor de una expresión, como los campos son numericos, utiliza la función suma.

Pepe
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

RE:utiliza la función Suma

Publicado por Rafa (3 intervenciones) el 17/09/2006 18:43:33
Que pongo----> total = suma(a, b) ??????
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

RE:utiliza la función Suma

Publicado por Pepe (766 intervenciones) el 17/09/2006 19:02:50
Rafa, de codigo no se mucho pero me parece que se escribe así
Sum(.A + .B)

Si quieres utilizar una macro, que eso si lo domino, lo que podrias hacer es establecer el valor del campo total, en elemento [total] y en expresion [A]+[B]

Espero que con la primera te sirva de no ser así, con la segunda lo tienes.

Pepe
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

RE:Problemas con codigo en eventos

Publicado por mi menda (1111 intervenciones) el 18/09/2006 03:12:15
Val( cadena) convierte una cadena a numérico

Dim a As String
Dim b As String
Dim Total As Single

a = "2.2"
b ="3.2"
Total = Val(a) + Val(b)

El problema que tienes es que los valores de cadena hay encerrarlos entre comillas dobles.
Ahora caes verdad...
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

RE:Problemas con codigo en eventos

Publicado por Chea (1015 intervenciones) el 19/09/2006 09:36:06
Val() reconoce el punto como separador decimal, sin embargo, por tu configuración regional, seguramente los cuadros de texto estarán usando coma. Las funciones de conversión que empiezan por "C" (cDbl(),cCur(),cInt()...) sí que reconocen la coma, así que, dependiendo del tipo de variable del que se trate, puedes utilizar una de éstas en lugar de val(). Por ejemplo:

Total = cDbl(a) + cDbl(b)

Saludos
José Bengoechea Ibaceta
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar