Rutina para búsqueda de artículos por similitud de los caracteres escritos.

Necesito la rutina para que a medida que voy escribiendo en un campo me vayan apareciendo en un form todos los registros que contengan los caracteres escritos en el campo con el fin de realizar la selección del articulo deseado.

1 Respuesta

Respuesta
2

Supongamos que tengo el formulario donde pongo un cuadro de texto al que he llamado Buscar

Si en el cuadro de texto escribo una m

Si ahora pongo una a

El código del evento al cambiar del cuadro de texto Buscar

Es esto exactamente lo que estoy buscando.

He copiado el texto que me mandas de la rutina pero no me funciona parece que falta algo de código en una parte que esta como borrada en la línea:

Form.RecordSource = "SELECT A ...... ,  l

¿Me podrías reseñar enviar todo este código de otra forma que pudiese copiarlo y poderlo adaptar a mi tabla?.

Muchas gracias

Donde pone A.. es Alias, tu tienes que ponerle los nombres de los campos de tu tabla.

Tengo adaptado esto en mi formulario en un Campo que he creado con el nombre de BUSCA:

Private Sub Busca_Change()
Form.Refresh
Dim a
a = Me.Busca & "*"
Form.RecordSource = " Select [NombreFiscal] from FACTURASCABECERA where [NombreFiscal] like '" & a & "'"
Busca.SetFocus
Aplication.SetOption "Comportamioento al entrar en el campo", 2
End Sub

y me esta dando este error:

El Nombre del Formulario es: FACTURASCABECERADIARIOFACTURACION

El campo que he de buscar: NombreFiscal

No se si he de colocar algún otro dato que me evite este error

He modificado lo que te había mandado antes y he colocado todos los campos del Form y me sigue dando el mismo error en la instrucción:

Form.RecordSource = " Select NumFacDef, FechaFacDef, NombreFiscal, Importe, Procedencia, EstadoCobro from FACTURASCABECERADIARIOFACTURACION WHERE NombreFiscal like '" & a & "'"

Vamos a ver. La instrucción tiene que "buscar" los valores en alguna tabla o consulta, en este caso, la tabla o consulta origen del formulario. Por ejemplo, supongamos que tengo una tabla Clientes con varios campos y hago un formulario al que llamo Formulario1. En la instrucción tengo que poner

form.recordsource="select * from Clientes where....

El nombre del formulario no aparece por ningún lado. En esencia le estoy diciendo que el origen de registros del formulario sean aquellos de la tabla Clientes en que el valor del campo X sea igual a...

Te agradeceria muchisimo si puedieses montarme la instruccion a traves de los datos que te indico pues no se como he de hacerlo.

El formulario que estoy tratando es un resumen de Facturas Emitidas y esta formado por tres tablas MAESTROCLIENTES - FACTURASCABECERA - FACTURAS LÍNEAS

Se muestran los siguientes Campos en el Formulario: FACTURASCABECERADIARIOFACTURACION

Tabla: FACTURASCABECERA

NumFacDef - FechaFacDef - Procedencia - EstadoCobro - Contador Facturas

Tabla: MAESTROCLIENTES

NombreFiscal

Tabla: FACTURASLINEAS

Suma ... que calculo con: [CantidadVenta]*[PVP]

Y no se exactamente como he de montar la instrucciones para que me funcione.

Si necesitas algún otro dato dímelo y te lo envío.

Un saludo

Si quieres, repito, si quieres, mándame una copia(si tiene algún registro inventado mejor, así no tengo que escribir yo) a [email protected] y le echo un vistazo.

Si lo haces, en el asunto del mensaje pon tu alias Jobe ya que si no sé quien me escribe no los abro.

Te preparare el Formulario con los datos de las tablas y echas un vistazo. Todo el Back-En me pesa 130 MB y es demasiado para mandártelo.

Con un único formulario que vea como lo adaptas me sirve, después ya me las arreglo yo con el resto de Forms que son muchísimos a convertir y en cada uno de ellos hay varias tablas que intervienen en los mismos.

Si solo hay una única tabla en el form me funciona perfectamente, el problema lo encuentro cuando hay más de una que no se como hacerlo.

Un saludo

Quizá sea mejor, que me mandes un mensaje(sólo el mensaje) y te mando yo un ejemplo y lo adaptas(al ver lo de 130 mb me he desmayado)

Me he descargado tu ejemplo y lo he adaptado a mi formulario.

Me saca perfectamente cada una de las líneas de los artículos que busco pero después de visualizarlos en el el form me da este error:

En la línea:

Aplication.SetOption "Comportamiento al entrar en el campo", 2

Si te fijas en la instrucción que te envié pone

Application con dos pes

Añade tu respuesta

Haz clic para o

Más respuestas relacionadas