Suma de campos en formulario

Estoy con un formulario en el que tiene 4 campos y quiero sumarlos en un llamaremos "TOTAL", me encuentro con los siguientes problemas:
1º los campos son numéricos, si en uno de ellos no escribo nada, en el total no me aparece nada, aparece en Blanco, como se puede hacer para que por defecto sea 0 si no se escribe nada en un campo.
2º Quiero se actualice el campoTOTAL a la vez voy ingresando datos en los campos 1,2,3,4.

1 Respuesta

Respuesta
2
1º - Mira en la ayuda de access el tratamiento de nulos y de la función "nz" (Lo digo porque creo que lo explican mejor de lo que puedo hacer yo en un mensaje)
2º - El control TOTAL ¿Lo guardas en la tabla, o es un control independiente que sólo muestra el resultado?
El cuadro TOTAL lo guardo en una Tabla.
Hay varias soluciones, como no se cuál es tu nivel, te lo esquematizo y eliges lo que prefieras:
Para calcular el total:
[total] = nz([campo1]+[campo2]+[campo3]+[campo4])
Soluciones:
1 - Puedes poner lo anterior en el evento "al cambiar" de cada campo (1,2,3,4)
2 - Puedes crear un campo independiente cuyo "origen de datos" sea ese (a la linea anterior, tendrías que quitarle el [total]. Luego tendrías que poner en el evento al cambiar de cada campo
[total]=[nombre_campo_independiente]
3 - Puedes crear una función con código y luego en el evento al cambiar de cada campo, llamar a la función.
Seguramente hay más maneras, pero estas son las que se me han ocurrido en este momento.
Hola,
Como indicas he colocado [total] = nz([campo1]+[campo2]+[campo3]+[campo4]) en el evento al cambiar de cada campo (1,2,3,4) del formulario, y el resultado es que cuando introduzco un dato me da el siguiente error, Microsof Office Access no encuentra el objeto  [total] = nz([campo1]+[campo2]+[campo3]+[campo4]).
Te explico de nuevo, en el formulario tengo 5 campos (campo1, campo2, campo3, campo4, total) todos los datos de estos campos los recoge una tabla, y lo que pretendo es que desde el formulario cuando valla metiendo datos en cualquier campo, pueda visualizar en el campo (total) la suma de los mismos, si en algún campo no hay datos debe ser 0.
Un saludo y espero tu respuesta.
A ver, he hecho la prueba por si acaso:
Creo una tabla con cuatro campos NUMÉRICOS y un campo total, también NUMÉRICO.
En un formulario basado en esa tabla, en el evento "después de actualizar" de cada campo (podría se lo que no te funciona) he puesto lo siguiente:
total = nz([campo1]+[campo2]+[campo3]+[campo4])
Con eso a medida que voy introduciendo los datos estos se van "refrescando".
Hola, No hay manera, si pongo total = nz([campo1]+[campo2]+[campo3]+[campo4]) en cada campo en el evento "despues de actualizar".
Luego al meter el dato en el correspondiente cuadro de texto del formulario, me da el siguiente error: Microsof Office Access no encuentra el objeto total = nz([campo1]+[campo2]+[campo3]+[campo4])
Estoy utilizando access2007
Un saludo,
Entiendo que en el formulario hay un control de nombre "total" ¿no?, y que lo anterior lo estás introduciendo en el editor de código.
Confírmame si es así.
En el formulario tengo 5 cuadros de texto, campo1 campo2 campo3 campo4 campo5 y total
en cada cuadro de texto en propiedades, eventos, despues de actualizar de cada campo introduzco total = nz([campo1]+[campo2]+[campo3]+[campo4])
Perdón te indique un ampo de más, el campo5.
Pero... ¿Dónde lo introduces? ¿En el editor de código?. Para ello en el evento en cuestión tienes que hacer click en los 3 puntitos "..." que te abrirá el editor de código.
Por otra parte los campos de texto, ponlos en formato "número" que es lo más lógico.

Añade tu respuesta

Haz clic para o

Más respuestas relacionadas