Access - campo que se rellene solo

 
Vista:

campo que se rellene solo

Publicado por Hola (6 intervenciones) el 13/04/2007 19:45:49
Tengo una base de datos con tres tablas y sus correspondientes formularios:

Tabla1: Identificación (texto); Nº personas(numérico); hombres(numérico); mujeres(numérico)
Tabla2: Identificación(texto); 1hombres(numérico); 2hombres (numérico) 1mujeres(numérico); 2mujeres(numérico) totalhombres(numérico); totalhombres(numérico)
Tabla3: Identificación(texto); 1hombres(numérico); 2hombres (numérico) 1mujeres(numérico); 2mujeres(numérico) totalhombres(numérico); totalhombres(numérico)

Aunque Tabla2 y Tabla3 tengan los mismos campos necesito tenerlas porque cumplen dos funciones distintas.

Están relacionadas las tres tablas por el campo Identificación siendo la Tabla1 la “madre” de todas ellas.

No tengo hecho un formulario con subformularios, sino que lo que tengo es un botón de comando en el formulario de Tabla1 para que me abra el formulario de la Tabla2 y el formulario de la Tabla3 cuando proceda.

Yo lo que quiero es hacer lo siguiente, cuando añada campos en la Tabla2 y Tabla3 cuando me haga la suma total de hombres que automáticamente en la Tabla1 campo hombres se ponga solo ese dato y en el campo mujeres cuando haga la suma total de mujeres haga lo mismo ese dato automáticamente se ponga solo en el campo mujeres dentro del formulario Tabla1.

¿Eso se puede hacer? En el caso de que se pueda; ¿Cómo?

Muchas gracias a todos.
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
Imágen de perfil de Alejandro

Actualizar automáticamente campos en formulario principal desde subformularios

Publicado por Alejandro (4142 intervenciones) el 08/08/2023 22:10:07
Puedes lograr que los campos en el formulario de Tabla1 se actualicen automáticamente con los totales de hombres y mujeres de los subformularios (Tabla2 y Tabla3) utilizando eventos y referencias a los controles de los subformularios. A continuación, te proporciono una guía paso a paso:

1. Abre el formulario de Tabla1 en modo Diseño.
2. Selecciona el campo "hombres" en el formulario de Tabla1 y abre la ventana de propiedades.
3. Ve a la pestaña "Eventos" y busca el evento "Después de actualizar". Haz clic en el botón de los tres puntos (...) para abrir el editor de código VBA para ese evento.

En el editor de código VBA, agrega el siguiente código para actualizar automáticamente el campo "hombres" en el formulario de Tabla1 con el total de hombres de Tabla2 y Tabla3:

1
2
3
4
5
6
7
8
9
10
11
12
13
Private Sub hombres_AfterUpdate()
    Dim totalHombresTabla2 As Integer
    Dim totalHombresTabla3 As Integer
 
    ' Obtener el total de hombres de Tabla2
    totalHombresTabla2 = Nz(Me.SubformularioTabla2.Form!totalhombres, 0)
 
    ' Obtener el total de hombres de Tabla3
    totalHombresTabla3 = Nz(Me.SubformularioTabla3.Form!totalhombres, 0)
 
    ' Calcular el total de hombres
    Me.hombres = totalHombresTabla2 + totalHombresTabla3
End Sub

4. Repite los pasos 2 y 3 para el campo "mujeres" en el formulario de Tabla1, utilizando el siguiente código:

1
2
3
4
5
6
7
8
9
10
11
12
13
Private Sub mujeres_AfterUpdate()
    Dim totalMujeresTabla2 As Integer
    Dim totalMujeresTabla3 As Integer
 
    ' Obtener el total de mujeres de Tabla2
    totalMujeresTabla2 = Nz(Me.SubformularioTabla2.Form!totalmujeres, 0)
 
    ' Obtener el total de mujeres de Tabla3
    totalMujeresTabla3 = Nz(Me.SubformularioTabla3.Form!totalmujeres, 0)
 
    ' Calcular el total de mujeres
    Me.mujeres = totalMujeresTabla2 + totalMujeresTabla3
End Sub

5. Cierra el editor de código VBA y guarda los cambios en el formulario de Tabla1.

Con estos cambios, cada vez que actualices los campos "totalhombres" y "totalmujeres" en los subformularios (Tabla2 y Tabla3), los campos "hombres" y "mujeres" en el formulario de Tabla1 se actualizarán automáticamente con los totales correspondientes.

Asegúrate de reemplazar "SubformularioTabla2" y "SubformularioTabla3" con los nombres reales de tus subformularios en el formulario de Tabla1.
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