Access - buscar registro

 
Vista:

buscar registro

Publicado por Sergio (3 intervenciones) el 24/03/2007 00:03:01
Saludos a todos y todas , tengo una duda seguramente facil de resolver.

Tengo dos formularios y una tabla. Y necesito hacer una busqueda en esa tabla con el dato con que rellene un campo de texto en el segundo formulario y mostrar los datos en el primero. No me dejan poner un combo en el primer formulario directamente porque hay demasiados registros y tampoco me sirve el comando buscar registro por lo mismo, hay demasiados registros que se llaman casi igual.

En el segundo formulario hago una busqueda mas eficaz. Solo necesito despues de seleccionar el registro mostrar los datos en el primer formulario.

He buscado muchos mensajes que trate de algo parecido y mañana seguire buscando pero si me da alguien una pista de como se hace ya me espabilare.

Muchas gracias de antemano :)
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

Búsqueda en tabla y mostrar datos en otro formulario

Publicado por Alejandro (4142 intervenciones) el 07/08/2023 19:26:09
Saludos, Sergio.

Para realizar la búsqueda en la tabla utilizando un campo de texto del segundo formulario y mostrar los datos en el primer formulario, puedes utilizar VBA (Visual Basic for Applications) para lograrlo.

Aquí tienes una guía paso a paso para hacerlo:

1. En el segundo formulario, agrega un cuadro de texto (llamémoslo "txtBusqueda") donde el usuario ingresará el dato para la búsqueda.

2. Crea un botón de comando (llamémoslo "btnBuscar") en el segundo formulario.

3. En el evento Click del botón "btnBuscar", escribe el siguiente código VBA para realizar la 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
28
29
30
31
Private Sub btnBuscar_Click()
    Dim valorBusqueda As String
    Dim rs As DAO.Recordset
    Dim strSQL As String
 
    ' Obtener el valor del cuadro de texto de búsqueda
    valorBusqueda = Me.txtBusqueda.Value
 
    ' Construir la consulta SQL para buscar el registro en la tabla
    strSQL = "SELECT * FROM NombreDeLaTabla WHERE NombreDelCampo = '" & valorBusqueda & "'"
 
    ' Abrir el registroset basado en la consulta SQL
    Set rs = CurrentDb.OpenRecordset(strSQL)
 
    ' Comprobar si se encontraron registros
    If Not rs.EOF Then
        ' Mostrar los datos en el primer formulario
        Forms("NombreDelPrimerFormulario").Campo1 = rs("Campo1")
        Forms("NombreDelPrimerFormulario").Campo2 = rs("Campo2")
        ' Continuar con los demás campos que desees mostrar
 
        ' Cerrar el registroset
        rs.Close
    Else
        ' Si no se encuentra el registro, muestra un mensaje de advertencia
        MsgBox "No se encontró el registro.", vbExclamation
    End If
 
    ' Liberar recursos
    Set rs = Nothing
End Sub

Asegúrate de reemplazar "NombreDeLaTabla", "NombreDelCampo" y los nombres de los formularios y campos correspondientes en el código.

4. Luego, en el primer formulario, abre el segundo formulario cuando sea necesario (por ejemplo, en el evento Click de un botón o en otro evento relevante) para permitir al usuario ingresar la búsqueda. Después de que el usuario realiza la búsqueda en el segundo formulario y hace clic en el botón "btnBuscar", los datos correspondientes se mostrarán automáticamente en el primer formulario.

Este enfoque te permitirá realizar una búsqueda más eficiente y precisa en la tabla desde el segundo formulario y mostrar los resultados en el primer formulario.

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