Quién sabe como trabajar el Filter con vba
Reciban todos ustedes un cordial saludo. Pasando a contar mi duda que tengo con este código en vba sobre la parte de filtros tomando en uso que uso un cuadro combinado al cual le apliqué lista de campos y también uso un cuadro de texto, donde anoto que es lo que deseo filtrar.
Pero cuando lo intento no me permite seleccionar y por tanto tampoco me permite entrar el dato bajo el cual deseo obtener mi filtro.
A través de los videos de youtube encontré un código vba de un autor extranjero que habla ingles pero pues mi inglés no es tan bueno pero le intenté entender.
Dejo una copia aquí del código que use.
Haber en donde es que falla el proceso y que alguno de ustedes me pueda orientar. Muchas gracias
Private Sub cboField_Enter()
Dim oRS As DAO.Recordset, i As Integer
If Me.Form.FilterOn = True Then
DoCmd.ShowAllRecords
Set oRS = Me.RecordsetClone
cboField.RowSourceType = "Value list"
cboField.RowSource = ""
For i = 0 To oRS.Fields.Count - 1
If oRS.Fields(i).Type = dbText Then
cboField.AddItem oRS.Fields(i).Name
End If
Next i
End If
End Sub
Private Sub txtFilter_exit(Cancel As Integer)
Dim sFilter As String, oRS As DAO.Recordset
If IsNull(cboField) Then
DoCmd.ShowAllRecords
MsgBox "seleccione un campo a filtrar", vbInformation, "Aviso TecnoAgro"
Exit Sub
End If
If IsNull(txtFilter) Then
DoCmd.ShowAllRecords: Exit Sub
'like "b*"
'like [parameter] & "*"
'"LIKE ' " & txtbox & "*'"
sFilter = cboField & "LIKE'" & txtFilter & "*'"
DoCmd.ApplyFilter , sFilter
Set oRS = Me.RecordsetClone
If oRS.RecordCount = 0 Then
MsgBox "No hubo resultados", vbInformation, "Aviso TecnoAgro"
DoCmd.ShowAllRecords
End If
End If
End Sub