En este grupo En todos

Grupo de Access



Campos Calculados en formularios

Juan de Jesús
Filologia e idiomas universidad nacion...
Escrito por Juan De Jesús Pico Chacón
el 08/05/2008

Buenos días apreciados amigos tengo la siguiente inquietud:

Tengo un formulario en el cual tengo un cuadro de texto que es calculado a partir de sumar otros campos. La pregunta es cómo hago para que ese dato calculado del cuadro de texto mencionado quede registrado en un campo de la base de datos (tabla) que he creado para guardar ese resultado?.

Muchas gracias por su orientación.

Juan de Jesús

Jaime Antonio Godoy Barbosa
Contador público unan managua
Escrito por Jaime Antonio Godoy Barbosa
el 09/05/2008

Tienes en el formulario 4 cuadros de texto Campo1, Campo2, Campocalculado y campoTotal.
En el evento "al recibir el enfoque" de campo puedes escribir lo siguiente:
Me. CampoTotal = Me. Campo1 Me. Campo2

... Faltaba el signo

Jaime Antonio Godoy Barbosa
Contador público unan managua
Escrito por Jaime Antonio Godoy Barbosa
el 11/05/2008

Me. CampoTotal = Me. Campo1 (signo mas) Me. Campo2
... El editor no pone la crucita del signo mas por eso lo escribí entre parentecis.

Juan De Jesús Pico Chacón
Filologia e idiomas universidad nacion...
Escrito por Juan De Jesús Pico Chacón
el 02/06/2008

Jaime Antonio

Muchas gracias por tu ayuda, ya lo hice, sin embargo me sale este aviso: "No puede encontrar la macro me campototal= me campo1 me campo2"

Cómo se escribiría la macro?

Muchas gracias y disculpa la molestia

Bendiciones

Juan

José Gerardo Barboza Campos
Costa Rica, Costa Rica
Escrito por José Gerardo Barboza Campos
el 10/06/2008

Hola Juan de jesús campo calculado
Me parece que se puede de esta forma: campocalculado = val (campo1) (signomás) val (campo2), "al recibir el enfoque" o a un botón de comando pe Total = val (subtotal)(signomás)(impuesto)

Escrito por Guillermo Sánchez Castro
el 23/06/2008


Copia este Evento en el Formulario
Private Sub Form_Load()
Total = Nz(Campo1) Nz(Campo2) Nz(Campo3) Nz(Campo4)
End Sub

Saludos

Jaime Antonio Godoy Barbosa
Contador público unan managua
Escrito por Jaime Antonio Godoy Barbosa
el 10/07/2008

Perdón Juan de jesús.

Lo que pasó es que lo escribiste en la propiedad evento y no en el código de Vba, por eso acces no encuentra la macro porque esta no existe.

En la siguiente te explico con mas detalle.

Jaime Antonio Godoy Barbosa
Contador público unan managua
Escrito por Jaime Antonio Godoy Barbosa
el 10/07/2008

Juan de Jesús, no expliqué bien. En tu tabla donde quieres que se registre el total. Debes incluir en el diseño de la tabla el campoTotal como campo numérico. Todos los campos que se van a sumar tambien deben ser numéricos. En diseño del formulario debes cambiar el cuadro de texto del campocalculado, que ya no será independiente, en su propiedad origen debes seleccionar o escibir el nombre del campototal de la tabla. Por lo tanto en el mismo cuadro de texto del campototal, en su propiedad evento "Al recibir el enfoque", debes seleccionar [Procedimiento de Evento] y le das click al punto suspensivo que te saldrá al derecha, esto te pasa al procesador de texto Vba que tendrá escrito lo siguiente:

Private Sub NClientes_GotFocus()

End Sub

Jaime Antonio Godoy Barbosa
Contador público unan managua
Escrito por Jaime Antonio Godoy Barbosa
el 10/07/2008

Continúa de texto anterior porque no alcanzó toda la explicación
Enmedio de estas dos sentencias debes escribir:
Me. CampoTotal = Me. Cuadrodetexto1 (signomas) Me. Cuadrodetexto2
Escribo entre paréntesis signomas porque el signo mas (la crucita) no lo incluye este procesador de texto, en el procesador de Vba si se puede escribir la crucita del mas. Los nombres de los cuadros de texto se deben ser de los campos que estas sumando. Al final deberá verse así:

Private Sub Total_GotFocus()
Me. CampoTotal = Me. Cuadrodetexto1 (signomas) Me. Cuadrodetexto2
End Sub
Recuerda poner la crucita en vez de (signomas)

Edwin Ortiz
Bogotá, Colombia
Escrito por Edwin Ortiz
el 15/01/2009

Si, el campo al cual desea ingresar el resultado pertenece a la misma tabla entonces debe generar el evento que realizará la sumatoria de los dos campos por ejemplo:

Cuando ingrese al campo Valor Sumado sume los dos valores uno y dos

Private Sub Valor_Sumado_Enter()
Me. Valor_Sumado = Me. Valor_Uno + Me. Valor_Dos
End Sub

Osvaldo Jet
Contaduria general, contaduria publica...
Escrito por Osvaldo Jet
el 16/01/2009

Hola

Eso es mas facil que respirar o sea...

Suponiendo que... Tienes los siguientes campos en tu tabla, y tambien en tu formulario:

Cantidad, PrecioUnitario y PrecioTotal

--------------------------------------------

Pones en el evento despues de actualizar de Cantidad lo siguiente:

PrecioTotal = Cantidad * PrecioUnitario

--------------------------------------------

Pones en el evento despues de actualizar de PrecioUnitario lo siguiente:

PrecioTotal = Cantidad * PrecioUnitario

-------------------------------------------

Porque? Simplemente porque podrias hacer cambios en cualquiera de estos dos campos... Y deberia actualizarse el resultado en el PrecioTotal.... Verdad?

ASi nomas es...

Bye


Liz Hernandez
Hidalgo, México
Escrito por Liz Hernandez
el 15/07/2010

Podrías auxiliarme no obtengo el total de un subtotal en formularios divididos estoy utilizando access 2007.
Realice la formula para subtotal sumando 2 campos dandome el resultado pero al generar el total y hacer referencia al campo subtotal no lo ace.
Gracias.

Fermin Torres Roldan
Ingeniero técnio agrícola cortijo de c...
Escrito por Fermin Torres Roldan
el 09/09/2010

Yo lo que hago es crear un campo dentro de la tabla con formato texto que se llame similar al calulado.

Lo pongo dentro del formulario de forma oculta, es decir le quito los bordes y el color del texto es igual que el fondo del formulario.

Seguidamente cuando se posicione dentro del campo calculado le escribo en procedimiento evento la siguientes instrucciones

Docmd. Runcomand accmdcopy

Docmd. Gotocontrol"nombre del campo en donde quiero copiar esta informacion"

Docmd. Runcomand accmdpaste

Docdm. Gotocontrol" campo o boton donde quiero seguir metiendo informacion"

Espero que te funcione


En access 2010 te permiten crear directamente el campo calculado, por ejemplo..

Campo1: NOMBRE

Campo2:APELLIDO

CAMPO3: ESTE EL CAMPO CALCULADO QUE LE LLAMAREMOS N_ALUMNO, LO UNICO QUE TENDREMOS QUE DECIRLE EN LA INSTRUCCION ES [NOMBRE]&" "&[APELLIDO]

CON ESTA NUEVA FUNCIONALIDAD DE ACCESS 2010 NOS AHORRAMOS TENER QUE HACERLO EN CONSULTAS.