Personalmente no uso filtros, y perdona la pregunta ¿Has mirado en el evento Después de actualizar del grupo de opciones FiltroNombreCompañía y convertido la macro a Visual Basic? Por probar la acabo de convertir y queda
'------------------------------------------------------------
' FiltrosNombreCompañía_AfterUpdate
'
'------------------------------------------------------------
Private Sub FiltrosNombreCompañía_AfterUpdate()
On Error GoTo FiltrosNombreCompañía_AfterUpdate_Err
If (FiltrosNombreCompañía = 1) Then
DoCmd.ApplyFilter "", "[NombreCompañía] Like ""[AÀÁÂÃÄ]*""", ""
End If
If (FiltrosNombreCompañía = 2) Then
DoCmd.ApplyFilter "", "[NombreCompañía] Like ""B*""", ""
End If
If (FiltrosNombreCompañía = 3) Then
DoCmd.ApplyFilter "", "[NombreCompañía] Like ""[CÇ]*""", ""
End If
If (FiltrosNombreCompañía = 4) Then
DoCmd.ApplyFilter "", "[NombreCompañía] Like ""D*""", ""
End If
If (FiltrosNombreCompañía = 5) Then
DoCmd.ApplyFilter "", "[NombreCompañía] Like ""[EÈÉÊË]*""", ""
End If
If (FiltrosNombreCompañía = 6) Then
DoCmd.ApplyFilter "", "[NombreCompañía] Like ""F*""", ""
End If
If (FiltrosNombreCompañía = 7) Then
DoCmd.ApplyFilter "", "[NombreCompañía] Like ""G*""", ""
End If
If (FiltrosNombreCompañía = 8) Then
DoCmd.ApplyFilter "", "[NombreCompañía] Like ""H*""", ""
End If
If (FiltrosNombreCompañía = 9) Then
DoCmd.ApplyFilter "", "[NombreCompañía] Like ""[IÌÍÎÏ]*""", ""
End If
If (FiltrosNombreCompañía = 10) Then
DoCmd.ApplyFilter "", "[NombreCompañía] Like ""J*""", ""
End If
If (FiltrosNombreCompañía = 11) Then
DoCmd.ApplyFilter "", "[NombreCompañía] Like ""K*""", ""
End If
If (FiltrosNombreCompañía = 12) Then
DoCmd.ApplyFilter "", "[NombreCompañía] Like ""L*""", ""
End If
If (FiltrosNombreCompañía = 13) Then
DoCmd.ApplyFilter "", "[NombreCompañía] Like ""M*""", ""
End If
If (FiltrosNombreCompañía = 14) Then
DoCmd.ApplyFilter "", "[NombreCompañía] Like ""[NÑ]*""", ""
End If
If (FiltrosNombreCompañía = 15) Then
DoCmd.ApplyFilter "", "[NombreCompañía] Like ""[OÒÓÔÕÖ]*""", ""
End If
If (FiltrosNombreCompañía = 16) Then
DoCmd.ApplyFilter "", "[NombreCompañía] Like ""P*""", ""
End If
If (FiltrosNombreCompañía = 17) Then
DoCmd.ApplyFilter "", "[NombreCompañía] Like ""Q*""", ""
End If
If (FiltrosNombreCompañía = 18) Then
DoCmd.ApplyFilter "", "[NombreCompañía] Like ""R*""", ""
End If
If (FiltrosNombreCompañía = 19) Then
DoCmd.ApplyFilter "", "[NombreCompañía] Like ""[SŠ]*""", ""
End If
If (FiltrosNombreCompañía = 20) Then
DoCmd.ApplyFilter "", "[NombreCompañía] Like ""T*""", ""
End If
If (FiltrosNombreCompañía = 21) Then
DoCmd.ApplyFilter "", "[NombreCompañía] Like ""[UÙÚÛÜ]*""", ""
End If
If (FiltrosNombreCompañía = 22) Then
DoCmd.ApplyFilter "", "[NombreCompañía] Like ""V*""", ""
End If
If (FiltrosNombreCompañía = 23) Then
DoCmd.ApplyFilter "", "[NombreCompañía] Like ""W*""", ""
End If
If (FiltrosNombreCompañía = 24) Then
DoCmd.ApplyFilter "", "[NombreCompañía] Like ""X*""", ""
End If
If (FiltrosNombreCompañía = 25) Then
DoCmd.ApplyFilter "", "[NombreCompañía] Like ""[YÝÿ]*""", ""
End If
If (FiltrosNombreCompañía = 26) Then
DoCmd.ApplyFilter "", "[NombreCompañía] Like ""[ZÆØÅ]*""", ""
End If
If (FiltrosNombreCompañía = 27) Then
DoCmd.ShowAllRecords
End If
If (CurrentRecord > 0) Then
DoCmd.GoToControl "NombreCompañía"
Exit Sub
End If
If (CurrentRecord = 0) Then
Beep
MsgBox "No hay registros para esa letra.", vbInformation, "No Records Returned"
DoCmd.ShowAllRecords
FiltrosNombreCompañía = 27
End If
FiltrosNombreCompañía_AfterUpdate_Exit:
Exit Sub
FiltrosNombreCompañía_AfterUpdate_Err:
MsgBox Error$
Resume FiltrosNombreCompañía_AfterUpdate_Exit
End Sub