Porfavor, alguien podria darme un codigo para buscar un registro en un msflexgrid segun un campo (ya sea codigo o nombre), sabiendo que debo ingresar ese campo en un textbox y que la base de datos es access.
Muchas gracias de antemano.
| |||
Re: buscar por campo en msflexgrid Primero debes crear un inputbox mediante el cuál el usuiario introduce el parámetro de búsqueda . Este sería un ejemplo para ADO Dim cadena As String cadena = InputBox("Ingrese el campo o parte del mismo. Buscaremos coincidencias con su ingreso dentro de la base de datos ", " Busqueda por campo") ' Si no escribe nada If cadena = "" Then Adodc.Refresh 'las lineas debajo On Error Resume Next 'evitan el error cuando no 'arroja resultados la busqueda On Error Resume Next Exit Sub Else Adodc2.RecordSource = "Select * from tabla Where campo like '%" & cadena & "%'" Adodc2.Refresh msflexgrid.SetFocus |
| |||
Re: buscar por campo en msflexgrid Aqui tienes otra idea,,, como ya tu cargaste los datos de tu tabla o consulta al msflexgrid, pon un caja de texto que tendra nombre txtbuscar. Yo pongo como referencia la columna dos, tu la puedes cambiar dependiendo con que campo deseas realizar la busqueda. Private Sub txtbuscar_Change() Dim Pos As Integer, i As Integer With MSFEMPLEADOS .Col = 2 For i = 1 To .Rows - 1 .Row = i Pos = InStr(UCase(.Text), UCase(txtbuscar.Text)) If Pos = 1 Then .ColSel = 21 .TopRow = 1 Exit For End If Next i End With End Sub Este para cuando lo hayas localizado con la direccional pases de la caja de texto ala fila del msflexgrid que tiene el valor buscado. Private Sub txtbuscar_KeyDown(KeyCode As Integer, Shift As Integer) If KeyCode = vbKeyDown Then MSFEMPLEADOS.SetFocus End If End Sub Espero te sirva. Att Osrohe. |