SoloCodigo

Programación General => Visual Basic 6.0 e inferiores => Mensaje iniciado por: Omarrpat en Jueves 20 de Febrero de 2003, 23:19

Título: Re: condiciones de busqueda con "find"
Publicado por: Omarrpat en Jueves 20 de Febrero de 2003, 23:19
Tengo una duda respecto a que si es posible utilizar la instruccion find para busquedas en una fuente de datos, pero formada de condiciones multiples

p/e
strcondicion= "Nombre='jesus'" and edad=35

algo asi por el estilo.

Find strcondicion
Título: Re: condiciones de busqueda con "find"
Publicado por: J.M.Movilla en Jueves 20 de Febrero de 2003, 23:49
Claro que se puede, pero tienes que tener cuidado de redactarla adecuadamente:

En tu ejemplo dirías:

strcondicion= "Nombre = 'jesus' and edad = 35"

if fichero.Recordset.RecordCount > 0 then

fichero.Recordset.MoveFirst    ' En caso contrario buscaría a partir del registro actual y podría no encontrar el dato si estaba en registros anteriores...

fichero.Recordset.Find ( strcondicion)

End If

Así, sí te funcionaría.

Saludos
Título: Re: condiciones de busqueda con "find"
Publicado por: HurryCrack en Viernes 28 de Febrero de 2003, 16:45
Yo creo que no se puede, lo he intentado varias veces y solo es admisible por el FindFirst de DAO y por el Find de OLEDB
Título: condiciones de busqueda con "find"
Publicado por: J.M.Movilla en Sábado 1 de Marzo de 2003, 20:58
Hola:

Carga un control ADOdc y pon este código, o el que se corresponda con el tipo de fichero...

Dim cBuscar As String

    Adodc1.ConnectionString = "Provider=Microsoft.Jet.OLEDB.4.0;Persist Security Info=False;Data Source=" & DataBaseName
    Adodc1.RecordSource = "Select * From " & TablaName & " Order by " & CampoName
    Adodc1.Refresh

        cBuscar = CampoName & " like '" & StrBusqueda & "*'"
        Adodc1.Recordset.MoveFirst
        Adodc1.Recordset.Find (cBuscar)

Verás cómo funciona.

Yo también empleo FindFirst (cBuscar), pero usando DAO. Y la pregunta en concreto se refería a la instrucción "FIND".

Por cierto, congratulaciones por tu incorporación al foro; ojalá te dure mucho la intensa actividad y la buena voluntad que nos demuestras.