Suma en tabla

Ayúdame con la siguiente consulta:
Tengo una tabla con los siguientes campos, MONTO1, MONTO2 Y TOTAL donde monto 1 y monto 2 tienen valores pero total este vació.
¿Cómo hago una consulta que me actualice los registros del campo TOTAL sumando monto 1 y monto 2 para cada fila?
Respuesta
1
No es bueno hacer lo que pretendes
si alguien modifica los montos , ya el total no cuadrara
te sugiero que lo calcules casa vez
si aun quieres
puede ser con una consulta de actualización o por codigo
dim r as recordset
set r= currentdb.openrecordset("Select * from tabla")
if r.recordcount >0 then
   r.movelast
   r.movefirst
   for a=0 to r.recordcount-1
        r.edit
        r!total=r!Monto1+r!monto2
        r.update
        r.movenext
    next
Endif

6 respuestas más de otros expertos

Respuesta
1
El campo total no debería de existir ya que no es un dato, es un calculo. Los cálculos se realizan a través de consultas por lo tanto tienes mal el diseño de la base de datos. Los cálculos nunca se deben de almacenar en campos simplemente son valores calculados a través de consultas
Tienes razón, ya quite el campo total y me imagino que puedo hacer una consulta que me cree la tabla con el campo total ya con datos calculados, ¿cómo se hace eso?
No, una cosa es una tabla y otra una consulta... Las consultas reflejan datos de tablas pero en una tabla no puede aparecer el dato de una consulta
Parece un trabalenguas, pero espero que te sirva... je je
Respuesta
1
¿Cómo has estado?
Voy a responder tu pregunta en unas horas más . Ten paciencia.
Ok, esperare
Si tienes un formulario que te muestra los registros uno a uno sería :
Usando el generador de expresiones en el campo de textos TOTAL- PROPIEDADES- ORIGEN DEL CONTROL- DATOS escribes =[monto1]+[monto2].
Mientras vas visualizando cada registro, en campo de textos TOTAL te va mostrando la suma.
La otra forma útil, sería usar una función SQL...
Respuesta
1
Creas una consulta normal llamas los campos MONTO1 Y MONTO2, en el siguiente campo colocas TOTAL:MONTO1+MONTO2 y le das enter, el sistema se encarga de crear un campo calculado guardas la consulta y verificas.
Si deseas con base en esta consulta creas un formulario con los tres campos MONTO1, MONTO2 y TOTAL, no se te olvide que el campo TOTAL es un campo calculado por tanto no teaparece en la tabla.
Cualquier inquietud mecomentas
Marcopolo
Respuesta
1
Create una consulta y en su código SQL (Ver - Vista SQL) pones:
update nombreDeTuTabla set total = monto1 + monto2;
Y después lo ejecutas con un botón que tiene dibujada una admiración en rojo.
Respuesta
1
Para empezar no está 'bien visto' el guardar campos calculados en las tablas ya que, cualquier modificación en alguno de los valores que intervienen en el cálculo, puede debe reflejarse en el campo calculado (y eso requiere mucho mantenimiento).
Mi consejo es que no lo guardes. Dónde quieras mostrarlo, haz una simple suma de los dos campos que intervienen.
De todas formas, si insistes en seguir por esa vía, la solución para arreglar los datos que tienes, pasa por una consulta de actualización dónde el campo TOTAL se actualice a la suma de los otros 2.
Eso si, ahí dónde tengas que meter los nuevos registros, tendrás que ingeniarte un método para que realice el cálculo y lo guarde. Insisto que yo no lo haría.
Xavi
Respuesta
1
En el modo diseño de la tabla agrega las 2 columnas y en la tercer escribí lo siguiente el el primer renglón
Total : [nombre de la tabla].[monto1] + [nombre de la tabla].[monto2]

Añade tu respuesta

Haz clic para o

Más respuestas relacionadas