Access - Subformularios

 
Vista:

Subformularios

Publicado por Luiggie (1 intervención) el 29/08/2005 19:22:39
Tengo un subformulario al cual se le cargan los datos dependiendo de dos datos anterionres que escojo en un combo, ¿como hago para que cuando escojo en el primer combo no se me desaparezca la estructura del subformulario?
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

Mantener la estructura del subformulario al seleccionar un valor en el combo

Publicado por Alejandro (4142 intervenciones) el 07/06/2023 17:21:38
Si deseas evitar que la estructura del subformulario se desaparezca al seleccionar un valor en el primer combo, puedes utilizar el evento "Después de actualizar" del primer combo para cargar los datos correspondientes en el subformulario sin perder la estructura.

Aquí tienes los pasos a seguir:

1. Abre el formulario en modo de diseño.
2. Selecciona el primer combo y ve a la pestaña "Eventos" en la ventana de propiedades.
3. Busca el evento "Después de actualizar" y haz clic en el botón de puntos suspensivos (...) para abrir el editor de código VBA.
4. Dentro del editor de código, agrega el código necesario para cargar los datos en el subformulario basado en la selección del primer combo. Puedes utilizar consultas o código SQL para filtrar los datos y asignarlos al origen del registro del subformulario.
Aquí tienes un ejemplo de código que puedes utilizar como punto de partida:

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
Private Sub Combo1_AfterUpdate()
    Dim strSQL As String
 
    ' Obtener el valor seleccionado en el primer combo
    Dim valorSeleccionado As Variant
    valorSeleccionado = Me.Combo1.Value
 
    ' Construir la consulta SQL para cargar los datos en el subformulario
    strSQL = "SELECT * FROM TablaDatos WHERE CampoCombo1 = '" & valorSeleccionado & "'"
 
    ' Establecer el origen de registros del subformulario a la consulta filtrada
    Me.NombreSubformulario.Form.RecordSource = strSQL
 
    ' Actualizar el subformulario para mostrar los datos correspondientes
    Me.NombreSubformulario.Form.Requery
End Sub

Asegúrate de reemplazar "Combo1" con el nombre real del primer combo, "TablaDatos" con el nombre real de la tabla que contiene los datos y "CampoCombo1" con el nombre real del campo que corresponde a la selección del primer combo. Además, reemplaza "NombreSubformulario" con el nombre real del subformulario.

Guarda los cambios y prueba el formulario. Ahora, cuando selecciones un valor en el primer combo, los datos correspondientes se cargarán en el subformulario sin afectar su estructura.

Espero que esta solución te sea útil. ¡Buena suerte con tu formulario en 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