Access - Busqueda

 
Vista:

Busqueda

Publicado por GRIS (20 intervenciones) el 14/08/2007 14:26:12
Hola a tod@s, alguien me podría ayudar ??? ,tengo una busqueda, que la realizo por medio de un cuadro de texto, pero quiero realizarla con 2 o mas cuadros de texto, como le prodría hacer ????, este es mi codigo ...

Set sql = CurrentDb()
strSQL = "SELECT * FROM Tubular where no_ensamble like '*" & NBUSCA & "*'"
Set sales = sql.OpenRecordset(strSQL, dbOpenDynaset)

With sales
If .EOF And .BOF Then 'Si está al comienzo y al final del Recordset al mismo tiempo.
MsgBox "No se encuentra o no existe el Numero de Ensamble"
NBUSCA = ""
NBUSCA2 = ""
Etiqueta247.Caption = "0"
GoTo Salida
Else
.MoveLast
.MoveFirst 'Voy al primer y al último registros con el objetivo de contar los registros.
End If
cuentapalabra = sales.RecordCount
Etiqueta247.Caption = cuentapalabra

alguien podria ayudarme ???
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

Realizar búsqueda con múltiples cuadros de texto

Publicado por Alejandro (4142 intervenciones) el 17/08/2023 18:23:41
Si deseas realizar una búsqueda utilizando múltiples cuadros de texto en lugar de uno solo, puedes modificar tu código para tener en cuenta los valores de los diferentes cuadros de texto. A continuación, te proporciono un ejemplo de cómo podrías hacerlo:

Supongamos que tienes dos cuadros de texto llamados "CuadroTexto1" y "CuadroTexto2" para realizar la búsqueda. Aquí está el código modificado:

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
32
33
Dim sql As DAO.Database
Dim sales As DAO.Recordset
Dim strSQL As String
Dim NBUSCA As String
Dim NBUSCA2 As String
Dim cuentapalabra As Long
 
NBUSCA = Me.CuadroTexto1.Value
NBUSCA2 = Me.CuadroTexto2.Value
 
If NBUSCA <> "" And NBUSCA2 <> "" Then
    Set sql = CurrentDb()
    strSQL = "SELECT * FROM Tubular WHERE no_ensamble LIKE '*" & NBUSCA & "*' AND otro_campo LIKE '*" & NBUSCA2 & "*'"
    Set sales = sql.OpenRecordset(strSQL, dbOpenDynaset)
 
    With sales
        If .EOF And .BOF Then
            MsgBox "No se encuentra o no existen registros con los criterios de búsqueda proporcionados."
            Etiqueta247.Caption = "0"
        Else
            .MoveLast
            .MoveFirst
            cuentapalabra = .RecordCount
            Etiqueta247.Caption = cuentapalabra
            ' Aquí puedes continuar con el procesamiento de los registros encontrados
        End If
    End With
    sales.Close
    Set sales = Nothing
    Set sql = Nothing
Else
    MsgBox "Debes ingresar valores en ambos cuadros de texto para realizar la búsqueda."
End If

Este código verifica que ambos cuadros de texto tengan valores antes de realizar la búsqueda. Luego, construye la consulta SQL incluyendo ambos valores de búsqueda y realiza la búsqueda en la tabla "Tubular". Si no se encuentran registros, muestra un mensaje y establece la etiqueta "Etiqueta247" en "0". Si se encuentran registros, realiza el conteo y actualiza la etiqueta.

Asegúrate de ajustar los nombres de los cuadros de texto y los campos de la tabla ("no_ensamble" y "otro_campo" en este caso) según tu diseño específico.
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