Ayuda con la inserción de datos en una tabla desde un formulario en una base de datos en access

Hola
Tengo una base de datos en la que en el formulario tengo dos campos que me dan un valor a través de una fórmula, pero el resultado de esta fórmula no sale en la tabla y necesito que salga para hacer las consultas, que puedo hacer, ¿tiene solución?
Gracias
Respuesta
1
Todo tiene solución menos la muerte, claro si es un campo calculado solo pondrá ahí el resultado del calculo pero no lo actualiza en la tabla
te sugiero que uses el procedimiento "al activar registro" del formulario para darle valor a los campos, cada vez que cambies de registro el valor se actualiza
entonces como origen de datos del formulario la tabla que dices y como origen del cuadro del formulario el campo de la tabla ( no la fórmula)
Luego
----------------------------------------------------------------------------------------------------------
Private Sub Form_Current()
me.controldelformulario= aqui la funcion o lo la formula ' asigno el valor a un control
me.otrocontrol= me.n1 +me.n2 ' aqui sumo los valores de dos controles 
End Sub
----------------------------------------------------------------------------------------------------------
Otra cosa si cambias el valor del cuadro n1 por ej, no se actualizará el control "otrocontrol" hasta que cambies de registro y vuelvas al mismo para que se ejecute el procedimiento anterior . Para evitar esto podrías hacer lo siguiente si quieres que se actualice al cambiar un valor
opción 1 crear un botón que actualize los datos seria así
el el procedimiento al hacer clic del botón pones
------------------------------------------------------------------------------------
Private Sub boton1_Click()
call form_current  ' que llame al procedimiento al activar registro
End Sub
----------------------------------------------------------------------------------------
Opción 2 en el procedimiento "después de actualizar" de cualquiera de los campos de formulario que intervienen en el calculo pones
------------------------------------------------------------------------------------------
Private Sub nombredelcontrol _AfterUpdate()
call form_current
End Sub
---------------------------------------------------------------------------------------------
Esto último es para cada control que intervenga en la fórmula en el evento después de actualizar y no tendrías que presionar ningún botón
prueba y me cuentas
saludos

Añade tu respuesta

Haz clic para o

Más respuestas relacionadas