Búsqueda de nombres coincidentes en un Formulario a medida que se va escribiendo

Tengo diferentes Forms. Continuos donde existe un Campo que a medida que se va escribiendo va seleccionando los nombres existentes en el formulario.

Utilizo esta rutina y esta dentro del Evento: Al cambiar

Private Sub BUSCA_Change()
Form.Refresh
If Nz(Me.BUSCA, "") = "" Then
Me.BUSCA.SetFocus
End If
Me.FilterOn = False
Me.Filter = "[Nombre] LIKE '*" & Me.BUSCA & "*'"
Me.FilterOn = True
Me.BUSCA.SetFocus
End Sub

Me funcionaba perfectamente en cada unos de los formularios donde esta emplazada.

He cambiado de version de Access y ahora el problema que tengo es que al escribir no me avanza la intentar dentro del texto. Me escribe en la misma intentar y no me encuentra nada.

Superpone todo lo que escribo en la misma posiciondentro del campo BUSCA.

1 Respuesta

Respuesta
1

José, personalmente creo que escribís por escribir. Vamos a ver, si tengo el formulario Clientes, que tiene un cuadro de texto llamado Busca

Voy a usar el nombre del cliente. Si en el cuadro de texto escribo una C, automáticamente

Si ahora le añado una O

Y el código del evento Al cambiar del cuadro de texto Buscar es simplemente

Private Sub Buscar_Change()
Me.Refresh
Me.RecordSource = "select * from clientes where nombrecliente like '" & Me.Buscar & "'&""*"""
End Sub

En caso de que no me acordara como empezaba el nombre, pero sí de una cadena

Ya me deja sólo los que tengan, al menos, una o en el nombre del cliente, si ahora le añado una m

Si ahora le añado otra o

Es el único que contiene la cadena omo

En este caso, el código del mismo evento es

Private Sub Buscar_Change()
Me.Refresh
Me.RecordSource = "select * from clientes where nombrecliente like ""*""&'" & Me.Buscar & "'&""*"""
End Sub

Como puedes ver es de los más sencillo.

Me hace lo mismo que te había había comentado.

Al escribir en el campo escribe solamente en el primer carácter no avanza la tabulación en el texto y no puede realizar búsquedas selectivas.

Esto me ocurre desde que he cambiado la version de Access.

¿Te refieres a que si, por ejemplo, escribes una M en el cuadro de texto y acto seguido escribes una A, te borra la M y se queda la A?

Para solucionar eso, basta conque en las propiedades del formulario- Eventos-Al activar el registro crees un procedimiento de evento y pongas

Buscar. Setfocus

O sea, que al activar el registro, el cursor se vaya siempre al control Buscar

La verdad, no lo mencioné porque creía que ya lo tenías.

No te he contestado antes porque he de probarlo en Otro lugar donde está instalado el programa. Apenas lo pruebe allí te doy el resultado. A mí, en mi maquina, me funciona perfectamente.

He puesto y probado lo que me has indicado en el evento Al activar el registro y me sigue haciendo lo mismo. Superpone los caracteres en el campo donde realizo las búsquedas.

Lo he probado en diferentes lugares dentro de varios programas y en todos ellos lo hace igual.

Te puedo asegurar que es así. Si quieres, repito, si quieres mándame un mensaje a [email protected] y te mando un ejemplo. Si lo haces, en el asunto del mensaje pon tu alias José OB, ya que si no sé quien me escribe ni los abro.

He estado comprobando los que me mandaste donde tengo instalada la aplicación y me hace los mismo. Superpone las letras una sobre otra.

Vamos a hacer una cosa, haz una copia vacía de la(s) tabla(s) relacionadas con el formulario y el propio formulario, para que le eche un vistazo. No es normal que a mí me funcione perfectamente( la base, digo)y a ti no(la base, digo).

A mi también me funciona perfectamente en mi equipo. El problema lo tengo desde que se ha cambiado el access donde esta instalado el programa.

Se ha instalado Access 2019 y es desde entonces cuando no esta funcionando bien.

Me pasa algo igual en las Copias de Seguridad que se hacen cada vez que se sale de la aplicación. Me da errores.

Creo que todo es debido al Version de Access 2019.

No debe ser por eso, ya que yo tengo instalado el Office 19.

En la ventana del editor de VB, en Herramientas-Referencias comprueba que no te falte ninguna.

Y en Archivo-Opciones-... comprueba lo que señalo con una flecha

Ok Lo comprobare y ya te digo si es es por eso.

Era eso. Lo he comprobado estaba mal configurado y por eso no se podía buscar.

Muchísimas gracias por toda tu gran ayuda.

Ya te decía que me extrañaba. Me alegro. Cualquier cosa, aquí me tienes.

Añade tu respuesta

Haz clic para o

Más respuestas relacionadas