Access - consulta de consulta

 
Vista:

consulta de consulta

Publicado por Leandro (5 intervenciones) el 08/03/2007 18:01:30
quiero crear un formulario independiente con un cuadro de texto , con una entrada que si cuadra me saque una consulta , lo primero que abra la bd y luego despues de actualizar y lo encuentra saque la consulta , pero nose como crear el codigo para ello .
gracias por la ayuda .
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

Crear un formulario independiente con cuadro de texto para realizar una consulta

Publicado por Alejandro (4142 intervenciones) el 04/08/2023 17:26:59
Para crear un formulario independiente con un cuadro de texto que realice una consulta cuando se cumpla una condición, necesitarás utilizar el lenguaje de programación VBA (Visual Basic for Applications) de Microsoft Access. A continuación, te guiaré paso a paso para crear el código necesario:

1. Crea un formulario independiente:
Abre Access y crea un nuevo formulario en modo diseño. Agrega un cuadro de texto en el formulario donde los usuarios puedan ingresar el valor que deseen buscar.

2. Agrega un botón de búsqueda (opcional):
Si lo prefieres, también puedes agregar un botón para que los usuarios inicien la búsqueda después de ingresar el valor en el cuadro de texto.

3. Asigna un nombre al cuadro de texto:
Selecciona el cuadro de texto y, en las propiedades, asigna un nombre único al cuadro de texto en el campo "Nombre" (por ejemplo, "txtBusqueda").

4. Asigna un nombre al botón (opcional):
Si agregaste un botón de búsqueda, selecciona el botón y asigna un nombre único en el campo "Nombre" (por ejemplo, "btnBuscar").

5. Abre el Editor de Visual Basic:
Ve al formulario en modo diseño y haz clic en la pestaña "Diseño" en la cinta de opciones. En el grupo "Herramientas", haz clic en "Código".

6. Agrega el código VBA:
Dentro del Editor de Visual Basic, verás una ventana en blanco. Asegúrate de que el nombre del formulario (en la parte superior izquierda) esté seleccionado en el primer cuadro desplegable y el evento "Al hacer clic" (si tienes un botón de búsqueda) o el evento "Al perder el enfoque" (si quieres que se realice la búsqueda automáticamente al salir del cuadro de texto) esté seleccionado en el segundo cuadro desplegable.

Ahora, agrega el siguiente código VBA para realizar la consulta:

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
Private Sub txtBusqueda_AfterUpdate() ' O Al hacer clic en el botón (si tienes uno)
    Dim strSQL As String
    Dim strValorBusqueda As String
    Dim rs As Recordset
 
    strValorBusqueda = Me.txtBusqueda.Value ' Obtiene el valor del cuadro de texto
 
    If Len(strValorBusqueda) > 0 Then ' Verifica si se ha ingresado un valor en el cuadro de texto
        strSQL = "SELECT * FROM NombreDeTuTabla WHERE CampoBusqueda='" & strValorBusqueda & "';"
 
        Set rs = CurrentDb.OpenRecordset(strSQL) ' Ejecuta la consulta
 
        If Not rs.EOF Then ' Verifica si se encontraron registros
            ' Hacer lo que necesites con los registros encontrados (puedes mostrarlos en otro formulario, informe, etc.)
            ' Ejemplo: DoCmd.OpenQuery "NombreDeTuConsulta"
        Else
            MsgBox "No se encontraron registros.", vbExclamation, "Búsqueda"
        End If
 
        rs.Close
        Set rs = Nothing
    End If
End Sub

Recuerda reemplazar "NombreDeTuTabla" con el nombre real de la tabla en la que deseas buscar y "CampoBusqueda" con el nombre del campo en el que deseas hacer la búsqueda.

7. Cierra el Editor de Visual Basic:
Cierra el Editor de Visual Basic y guarda los cambios en el formulario.

Con este código, cuando los usuarios ingresen un valor en el cuadro de texto y hagan clic en el botón (si lo tienes) o salgan del cuadro de texto, se realizará una consulta en la tabla y se mostrará un mensaje si no se encuentran registros.

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