Buscar en un datagrid

Iniciado por xDie, 5 Diciembre 2006, 22:07 PM

0 Miembros y 1 Visitante están viendo este tema.

xDie

Hola como peudo hacer esto.. vi unso psot viejos de hacer sentencias sql y eso.. pero yo tengo un textbox y un boton buscar y un datagridd con toda un bd en access, queiro que me busque ahi com peudo hacer ???
Licence to kill!

CeLaYa

puedes hacerlo con una consulta sql, usando solo la caja de texto y el boton



private sub Command1_Click()
dim Bd as database
dim Tb as database


set BD = workspaces(0).Opendatabase("c:\....\tu_BD")
set Tb =BD.OpenRecordset("SELECT * FROM Tabla " & _
                                         "WHERE Campo = '" & text1.text & "';")

If tb.Recordcount > 0 then
    'Encontro registros que cumplen la condición
else
    Msgbox "no encontre nada de nada"
end if

tb.close
set tb = nothing

BD.close
Set BD = Nothing


end sub
"La soledad es el elemento de los grandes talentos".
Cristina de Suecia (1626-1689) Reina de Suecia.

CeLaYa

o si estas usando un datacontrol pues le pones la consulta SQL y luego un Refresh
"La soledad es el elemento de los grandes talentos".
Cristina de Suecia (1626-1689) Reina de Suecia.

xDie

#3
Como hago eso celaya? uso un datacontrol, lo que quiero es que me meustre el resultado en algun lado  ;D gracias
Licence to kill!

CeLaYa

el datacontrol no lo uso, prefiero hacerlo con ADO, que en teoria seria lo mismo, mira más o menos esto es lo que hago:




´Declaro variables para el acceso a la BD
dim BD as Database
dim Rd as RecordSet

'Abro la BD
Set BD = Workspaces(0).Opendatabase("c:\..\BD.mdb", Lectura, Excritura, Password)
'Abro la tabla o en este caso hago un filtrado
set Rd = BD.OpenRecordset("SELECT * FROM Tabla WHERE Campo = '" & text1.text & "';")
'Checo si encontro registros
if Rd.RecordCount > 0 then
   ' Encontro registros
else
   ' msgbox "No hay registros para mostrar"
end if
'Cierro la tabla y la BD
Rd.close
BD.close

'Libero memoria
set Rd = nothing
set BD = nothing




aunque creo que con el data lo podrías hacer más o menos asi



data1.DabaseName = "tuBD.mdb"
data1.RecordSource = "Tabla"
data1.refresh


If Data1.Recordset.RecordCount > 0 Then
   data1.Recordset.FindFirst "Campo1 = '" & text1.text & "'"
   if data1.Recordset.NoMatch then
      msgbox "no hay registros que mostrar"
   else
      'encotro unos registros
   end if
end if



alguna vez use el datacontrol pero luego se me hizo mejor usar variables para lo que estaba haciendo
"La soledad es el elemento de los grandes talentos".
Cristina de Suecia (1626-1689) Reina de Suecia.