esto es lo que vas a escrivir en un modulo
Public Function Salida(sTextbox As TextBox, sFlexGrid As MSFlexGrid, sDB As Database, sTable As String, sField As String) As Boolean
On Error Resume Next
Dim Contador As Integer
Dim LongitudAnterior As Integer
Dim Temporal As Recordset
'Poner la función Salida a FALSE
Salida = False
If Not sTextbox.Text = "" And IsDelOrBack = False Then
'Ponemos en LongitudAnterior la longitud del sTextbox
LongitudAnterior = Len(sTextbox.Text)
Set Temporal = sDB.OpenRecordset("SELECT * FROM " & sTable & " WHERE " & sField & " LIKE '" & sTextbox.Text & "*'", dbOpenDynaset)
If Err = 3075 Then
'Bug
End If
If Not Temporal.RecordCount = 0 Then
If Temporal.EOF = True And Temporal.BOF = True Then
MsgBox "Not Matching Records", vbInformation, "Error"
Else
Temporal.MoveFirst
sFlexGrid.Clear
sFlexGrid.FormatString = " Anumciante | Codigo |Direccion | Formato |Medida |Presentacion |Empresa |Contrato |Ciudad |Tipo |Telefono "
Do While Not Temporal.EOF
sFlexGrid.AddItem Temporal.Fields(1).Value
sFlexGrid.TextMatrix(sFlexGrid.Rows - 1, 1) = Temporal.Fields(2).Value
sFlexGrid.TextMatrix(sFlexGrid.Rows - 1, 2) = Temporal.Fields(5).Value
sFlexGrid.TextMatrix(sFlexGrid.Rows - 1, 3) = Temporal.Fields(4).Value
sFlexGrid.TextMatrix(sFlexGrid.Rows - 1, 4) = Temporal.Fields(6).Value
sFlexGrid.TextMatrix(sFlexGrid.Rows - 1, 5) = Temporal.Fields(7).Value
sFlexGrid.TextMatrix(sFlexGrid.Rows - 1, 6) = Temporal.Fields(8).Value
sFlexGrid.TextMatrix(sFlexGrid.Rows - 1, 7) = Temporal.Fields(9).Value
sFlexGrid.TextMatrix(sFlexGrid.Rows - 1, 8) = Temporal.Fields(10).Value
sFlexGrid.TextMatrix(sFlexGrid.Rows - 1, 9) = Temporal.Fields(11).Value
sFlexGrid.TextMatrix(sFlexGrid.Rows - 1, 10) = Temporal.Fields(12).Value
Temporal.MoveNext
Loop
End If
If sTextbox.SelText = "" Then
sTextbox.SelStart = LongitudAnterior
Else
sTextbox.SelStart = InStr(sTextbox.Text, sTextbox.SelText)
End If
sTextbox.SelLength = Len(sTextbox.Text)
Salida = True
Else
sFlexGrid.Clear
End If
End If
End Function
esto sirve si vas a trabajar con msflexgrid
aqui esata lo que bas a escrivir en el formulario que querai
Public DB As Database
Public Rs As Recordset
Private Sub cboBusqueda_Click()
TextoaBuscar.Text = ""
End Sub
Private Sub CmdCancel_Click()
Data1.Recordset.CancelUpdate
Command2.Enabled = False
CmdCancel.Enabled = False
cmdNew.Enabled = True
cmdUpdate.Enabled = True
d
End Sub
Private Sub cmdNew_Click()
Data1.Recordset.AddNew
h
Command2.Enabled = True
CmdCancel.Enabled = True
cmdNew.Enabled = False
cmdUpdate.Enabled = False
End Sub
Private Sub cmdUpdate_Click()
Data1.Recordset.Edit
Command2.Enabled = True
CmdCancel.Enabled = True
cmdNew.Enabled = False
cmdUpdate.Enabled = False
h
End Sub
Private Sub Command1_Click()
Form1.Show
busqueda.Hide
TextoaBuscar = ""
cboBusqueda.ListIndex = 0
End Sub
Private Sub Command2_Click()
Data1.UpdateRecord
Command2.Enabled = False
CmdCancel.Enabled = False
cmdNew.Enabled = True
cmdUpdate.Enabled = True
d
End Sub
Private Sub Command3_Click()
Data1.Recordset.MovePrevious
If Data1.Recordset.BOF Then
MsgBox "Estamos en el Primer Registro"
End If
End Sub
Private Sub Command4_Click()
Dim Resp
Resp = InputBox("Desea eliminar el registro S/N?", "Confirmación")
If UCase(Resp) = "S" Then
Data1.Recordset.Delete
Data1.Recordset.MoveFirst
Else
MsgBox "Transacción abortada."
Data1.Recordset.MoveFirst
End If
End Sub
Private Sub Command5_Click()
Data1.Recordset.MoveNext
If Data1.Recordset.EOF Then
MsgBox "Estamos en el Ultimo Registro"
End If
End Sub
Private Sub Command6_Click()
On Error Resume Next
Dim iFila, iCol As Integer
For iFila = 1 To MSFlexGrid1.Rows
For iCol = 0 To MSFlexGrid1.Cols - 1
Printer.Print MSFlexGrid1.TextMatrix(iFila, iCol)
Next iCol
Next iFila
Printer.EndDoc
End Sub
Private Sub Command7_Click()
Form1.Show
busqueda.Hide
TextoaBuscar = ""
cboBusqueda.ListIndex = 0
End Sub
Private Sub Command8_Click()
Dim Resp
Resp = InputBox("Ingrese codigo .", "Búsqueda")
Data1.Recordset.FindFirst ("codigo Like '" & Resp & "'")
If Data1.Recordset.NoMatch Then
MsgBox "No se encuentra el registro..."
Data1.Recordset.MoveLast
End If
End Sub
Private Sub Form_Load()
d
With cboBusqueda
.AddItem "medidas"
.AddItem "codigo"
.AddItem "Anunciante"
.AddItem "direccion"
.AddItem "Formato"
.AddItem "Propietario"
.AddItem "Presentacion"
.AddItem "Empresa"
.AddItem "CONTRATO"
.AddItem "Ciudad"
.AddItem "Tipo"
.AddItem "Tlf"
.ListIndex = 0
End With
If Right(App.Path, 1) = "\" Then
Set DB = OpenDatabase(App.Path + "forma.mdb")
Else
Set DB = OpenDatabase(App.Path + "\forma.mdb")
End If
Set Rs = DB.OpenRecordset("POLAR")
Me.Data1.DatabaseName = App.Path & "/forma.mdb"
End Sub
Private Sub TextoaBuscar_Change()
On Error Resume Next
If cboBusqueda.Text <> "" Then
MSFlexGrid1.Rows = 1
If MSFlexGrid1.Rows = 1 Then
MSFlexGrid1.TextMatrix(0, 0) = "Anunciante"
MSFlexGrid1.TextMatrix(0, 1) = "codigo"
MSFlexGrid1.TextMatrix(0, 2) = "direccion"
MSFlexGrid1.TextMatrix(0, 3) = "Formato"
MSFlexGrid1.TextMatrix(0, 4) = "medidas"
MSFlexGrid1.TextMatrix(0, 5) = "Propietario"
MSFlexGrid1.TextMatrix(0, 6) = "Presentacion"
MSFlexGrid1.TextMatrix(0, 7) = "Empresa"
MSFlexGrid1.TextMatrix(0, 8) = "CONTRATO"
MSFlexGrid1.TextMatrix(0, 9) = "Ciudad"
MSFlexGrid1.TextMatrix(0, 10) = "Tipo"
MSFlexGrid1.TextMatrix(0, 11) = "Tlf"
End If
Select Case cboBusqueda.Text
Case "Anunciante"
Salida TextoaBuscar, MSFlexGrid1, DB, "POLAR", "Anunciante"
Case "codigo"
Salida TextoaBuscar, MSFlexGrid1, DB, "POLAR", "codigo"
Case "direccion"
Salida TextoaBuscar, MSFlexGrid1, DB, "POLAR", "direccion"
Case "Formato"
Salida TextoaBuscar, MSFlexGrid1, DB, "POLAR", "Formato"
Case "medidas"
Salida TextoaBuscar, MSFlexGrid1, DB, "POLAR", "medidas"
Case "Propietario"
Salida TextoaBuscar, MSFlexGrid1, DB, "POLAR", "Propietario"
Case "Presentacion"
Salida TextoaBuscar, MSFlexGrid1, DB, "POLAR", "Presentacion"
Case "Empresa"
Salida TextoaBuscar, MSFlexGrid1, DB, "POLAR", "Empresa"
Case "CONTRATO"
Salida TextoaBuscar, MSFlexGrid1, DB, "POLAR", "CONTRATO"
Case "Ciudad"
Salida TextoaBuscar, MSFlexGrid1, DB, "POLAR", "Ciudad"
Case "Tipo"
Salida TextoaBuscar, MSFlexGrid1, DB, "POLAR", "Tipo"
Case "Tlf"
Salida TextoaBuscar, MSFlexGrid1, DB, "POLAR", "Tlf"
Case Else
End Select
Else
TextoaBuscar = ""
cboBusqueda.ListIndex = 0
End If
End Sub