Access - Se borra el espacio en blanco

 
Vista:

Se borra el espacio en blanco

Publicado por David (23 intervenciones) el 09/05/2017 09:40:21
Hola
Tengo un formulario para encontrar clientes en una tabla.
En el cuadro donde pongo el nombre a buscar ("CuadroBuscador") voy escribiendo el nombre y va apareciendo una lista de los clientes encontrados.
En el evento "Al cambiar", tengo escrito lo siguiente:



1
2
3
4
5
6
7
8
9
10
11
12
13
Private Sub CuadroBuscador_Change()
Dim vTexto As String
vTexto = Nz(Me.CuadroBuscador.Text, "")
If vTexto = "" Then
Me.FilterOn = False
Else With Me
.Filter = "[Apellidos] LIKE '*" & vTexto & "*'"
.FilterOn = True
.CuadroBuscador.SetFocus
.CuadroBuscador.SelStart = Len(vTexto)
End With
End If
End Sub


El problema es que cuando escribo un espacio en blanco (entre dos apellidos) se borra inmediatamente.
Por ejemplo, quiero buscar a ver si hay alguien llamado "García Pérez". Pues bien, cuando pongo el espacio para seguir con la P de Pérez, se me borra ese espacio y me quedaría: "GarcíaPérez". Una vez escrito, sí que puedo ir hacia atrás e insertar el espacio en blanco.

¿Alguien sabe alguna solución?
Gracias
Valora esta pregunta
Me gusta: Está pregunta es útil y esta claraNo me gusta: Está pregunta no esta clara o no es útil
0
Responder

Se borra el espacio en blanco

Publicado por Anonimo (3315 intervenciones) el 10/05/2017 12:04:08
El evento 'Change' refresca el entorno del objeto, por eso se pierde el espacio (al estar al final del contexto escrito, Access lo ignora cuando refresca).

La solución ideal es que el objeto que recibe las pulsaciones y el que las muestra estén en entornos diferentes (así, el que recibe las pulsaciones no se refresca y mantiene los espacios o cualquier otro carácter no imprimible)

Un clásico, es que se obtengan las pulsaciones del teclado en el formulario principal y los resultados se presenten en un cuadro de lista o en un subformulario ...... (objetos que se refrescan de forma independiente y no alteraran al formulario principal)

Conocida la mas que probable causa de ese comportamiento, solo habrá que analizar el entorno real y solucionarlo.
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

Se borra el espacio en blanco

Publicado por David (23 intervenciones) el 10/05/2017 17:41:58
Gracias por tu respuesta.
No me había explicado demasiado bien.
El CuadroBuscador está en el encabezado del formulario, y en el Detalle está el subformulario en donde aparecen los datos.
En el ejemplo de donde saqué el código (que luego he adaptado a mi programa), sí que se podía escribir el espacio en blanco.
¿Hay algún otro código que pueda funcionar?
Gracias de nuevo
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar