Access - Busqueda por campo determinado

 
Vista:
sin imagen de perfil
Val: 38
Ha aumentado su posición en 2 puestos en Access (en relación al último mes)
Gráfica de Access

Busqueda por campo determinado

Publicado por Angel Andrés (113 intervenciones) el 03/04/2007 17:02:27
Tengo Una tabla "Personas" con los siguientes campos más importantes:
- NumUni (Número Único (Clave Principal))
- Apellido
- Nombres
- DNI (Documento Nacional de Identidad)
Quiero hacer un formulario de busqueda dándole al usuario la posibilidad de poder elegir buscar por NumUni, Apellido y Nombres o DNI. Hasta el momento cree un formulario con un botón para busqueda, un cuadro de texto para escribir lo que se buscar, tres Casillas de Verificación y un subformulario en vista hoja de dato.
Cuando se realiza la busqueda por DNI o NumUni, de existir sólo traerá un solo registro. Pero por ejemplo: si se busca una persona "Martinez Mariano", Al introducir en el cuadro de texto "Mar,Mar" deberá mostrar:
Martin Mario
Martini Mariano
Martinez Mariano
Martinez Mario
Al hacer click sobre el registro deseado abrir otro form con más datos de la persona.
Mi pregunta es si pueden ayudarme con el código de este form, que me digan si es lo más conveniente usar un subform en vista hoja de datos para que me muestre todos los registros que responden a la busqueda y como hago para cuando identificado el registro buscado me permita abrir otro formulario. Es una trabajo práctico para la facu...por favor ayuda y mil 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

Formulario de búsqueda con múltiples criterios y subformulario de resultados

Publicado por Alejandro (4142 intervenciones) el 07/08/2023 21:46:02
Para crear un formulario de búsqueda que permita al usuario buscar por diferentes campos y mostrar los resultados en una vista hoja de datos, puedes seguir los siguientes pasos:

1. Diseño del formulario de búsqueda:
- Crea un formulario con los controles necesarios para la búsqueda. Puedes tener un cuadro de texto para ingresar el criterio de búsqueda y tres casillas de verificación para permitir al usuario seleccionar los campos por los que quiere buscar (NumUni, Apellido y Nombres, DNI).
- Agrega un botón de búsqueda que ejecutará el código para realizar la búsqueda.

2. Código del botón de búsqueda:
- En el evento Click del botón de búsqueda, escribir el código para realizar la consulta y mostrar los resultados en el subformulario.

3. Subformulario en vista hoja de datos:
- Agrega un subformulario en el formulario principal y configúralo para que muestre los resultados de la búsqueda en vista hoja de datos.

A continuación, te presento un ejemplo del código que podrías utilizar en el evento Click del botón de búsqueda:

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
Private Sub cmdBuscar_Click()
    Dim strSQL As String
    Dim strWhere As String
 
    ' Construir la cláusula WHERE de la consulta en función de las opciones seleccionadas por el usuario
    If Me.chkNumUni Then
        strWhere = "NumUni LIKE '*" & Me.txtBusqueda & "*' OR "
    End If
    If Me.chkApellidoNombres Then
        strWhere = strWhere & "Apellido LIKE '*" & Me.txtBusqueda & "*' OR Nombres LIKE '*" & Me.txtBusqueda & "*' OR "
    End If
    If Me.chkDNI Then
        strWhere = strWhere & "DNI LIKE '*" & Me.txtBusqueda & "*' OR "
    End If
 
    ' Eliminar la última parte de la cláusula WHERE, ya que termina con "OR"
    strWhere = Left(strWhere, Len(strWhere) - 4)
 
    ' Construir la consulta completa
    strSQL = "SELECT * FROM Personas WHERE " & strWhere
 
    ' Asignar la consulta al subformulario
    Me.subfrmResultados.Form.RecordSource = strSQL
 
    ' Actualizar el subformulario para mostrar los resultados
    Me.subfrmResultados.Form.Requery
End Sub

Asegúrate de ajustar el nombre de los controles y del subformulario según el diseño de tu formulario.

Con este código, al hacer clic en el botón de búsqueda, se construye una consulta SQL dinámica en función de las opciones seleccionadas por el usuario y el texto ingresado en el cuadro de búsqueda. Luego, se asigna esta consulta al subformulario y se actualiza para mostrar los resultados.

Espero que este ejemplo te ayude a implementar tu formulario de búsqueda y que sea útil para tu trabajo práctico. ¡Buena suerte, Ángel!
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