Access - Enviar datos entre formularios

 
Vista:

Enviar datos entre formularios

Publicado por frantoro (1 intervención) el 16/09/2004 11:07:19
Hola compañeros:
Tengo un problema con una base de datos que estoy montando. Tengo dos formularios. El primero tiene un campo donde pongo la fecha y otro donde selecciono un nombre en un menú desplegable. Lo que quiero es que esos dos valores se pasen a otro formulario que está conectado con una tabla cuando pulse el boton aceptar que se encuentra en el primero de los formularios. He leido que de hace con un evento en VB, pero no se nada de VB y no se como pasar esos valores. ¿Como podría además repetir esos valores en la tabla hasta que rellene todos los campos que necesito? Es decir en la tabla a la que le he pasado la fecha y el nombre tengo que repetir esos valores en más de una línea.

Muchas gracias.
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

Enviar datos entre formularios

Publicado por Alejandro (4142 intervenciones) el 11/05/2023 18:54:13
Para enviar datos entre formularios en Microsoft Access, puedes utilizar variables globales o pasar los valores como parámetros en el evento del botón "Aceptar". Aquí te presento una solución utilizando variables globales:

1. En un módulo de VBA, declara variables globales para almacenar la fecha y el nombre seleccionados. Por ejemplo:

1
2
Public gFecha As Date
Public gNombre As String

2. En el evento del botón "Aceptar" en el primer formulario, asigna los valores de los controles a las variables globales y abre el segundo formulario:

1
2
3
4
5
Private Sub btnAceptar_Click()
    gFecha = Me.txtFecha.Value
    gNombre = Me.cboNombre.Value
    DoCmd.OpenForm "SegundoFormulario"
End Sub

3. En el segundo formulario, en el evento Al cargar, puedes utilizar las variables globales para mostrar los valores en los campos correspondientes:

1
2
3
4
Private Sub Form_Load()
    Me.txtFecha.Value = gFecha
    Me.txtNombre.Value = gNombre
End Sub

4. Para repetir los valores en múltiples líneas en una tabla, puedes utilizar un bucle o un proceso iterativo para insertar las filas necesarias. Por ejemplo, podrías tener un botón en el segundo formulario que realice esta acción:

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
Private Sub btnInsertar_Click()
    Dim db As DAO.Database
    Dim rs As DAO.Recordset
 
    Set db = CurrentDb
    Set rs = db.OpenRecordset("NombreDeLaTabla")
 
    Do While Not rs.EOF
        rs.AddNew
        rs("Fecha") = gFecha
        rs("Nombre") = gNombre
        rs.Update
        rs.MoveNext
    Loop
 
    rs.Close
    Set rs = Nothing
    Set db = Nothing
End Sub

Recuerda reemplazar "NombreDeLaTabla" con el nombre real de tu tabla.

Espero que esta solución te ayude a pasar los valores entre formularios y repetirlos en una tabla en Microsoft Access.
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