Búsqueda de registros

Tengo un formulario tabular que devuelve los registros de una tabla de vehículo. Los campos son tipo, marca, modelo color etc.
El problema es que en color tengo los datos tipo texto y son del tipo "color rojo, rojo oscuro, rojo granate etc.
Quisiera mediante un botón de comando poder buscar aquellos por ejemplo "rojo" y me devolviese en el formulario aquellos registros que en el campo color figuren todos los que está la palabra rojo. Es decir no solo aquellos que figure "rojo" en su tenor literal sino aquellos que figure "rojo claro, rojo oscuro, rojo granate etc"
Y digo esto por que con una consulta con criterios en el campo color [introduzca color] no me sirve por lo que he dicho antes. Seria como buscar en un campo aquellos registros que tuviesen la palabra "miguel", aunque en el campo que es tipo texto haya más caracteres.
No se si me explico, se que es fácil con aplicar el filtro por selección pero quiero que esto esté en un botón de comando.
Gracias de antemano

1 respuesta

Respuesta
1
Fe de erratas:
Botón debe decir botón
Un de talle más...
Después de:
Me.Filter = FiltroColor
Agrega también:
Me.FilterOn = True
Otra cosa que debes considerar es que al filtrar los datos este filtro quedara activo. Por lo tanto debes también agregar un botón que te permita restablecer dicho filtro. Puedes agregar un botón que diga por ejemplo "Ver Todos"
y para el código VB de este botón poner lo siguiente:
Private Sub Comando7_Click()
Me.Filter = ""
Me.FilterOn = false
End Sub
Uuuunnnnnnnn Crack Campeón, excelente y mil gracias
Mil disclpas, no soy tan eficiente como la PC y ayer hice un clic antes de tiempo. Pero hay te va la respuesta completa.
Debes hacer lo siguiente:
1. Agrega a tu formulario un botón
2. En la ventana de propiedades del botón busca la pestaña: EVENTOS
3. Localiza el evento: AL HACER CLICK y seleccionalo.
4. Veras que aparece al final del renglón un botón con 3 puntitos.
5. Haz click sobre este botón y aparecerá un menú.
6. Selecciona la opción: GENERAR CÓDIGO
7.Con lo anterior entraras al código VB del botón. Y veras algo similar a lo siguiente dependiendo del nombre que hayas dado a tu botón:
Private Sub Comando1_Click()
End Sub
Entre estas etiquetas debes escribir lo siguiente:
Private Sub Comando6_Click()
Dim FiltroColor As String
FiltroColor = Trim(InputBox("Buscar color?"))
FiltroColor = "((left(colores.Color," & Str(Len(FiltroColor)) & _
")='" & FiltroColor & " '))"
Me.Filter = FiltroColor
End Sub
La rutina que te envío hará que al hacer click en el botón aparezca en tu pantalla una ventana preguntando el color base por ejemplo: Rojo.
Escribes el color que quieras y das ACEPTAR de este modo tu base de datos será filtrada obteniendo solo aquellos registros que contengan la palabra Rojo (o cualquier otra que escribas)
Importante:
La rutina que te mando tiene como requisito que el color base: Rojo, Azul, Amarillo, Etc. Debe estar escrito al principio del dato de color, por ejemplo: Rojo fuego, Rojo sangre, Rojo carmín, etc.
Si observas siempre el color base ira al principio.
Es posible hacer algunas modificaciones para que se pueda poner el color base en cualquier otra posición pero no he trabajado aún en ello.
Avisame si te sirve así o requieres alguna modificación que se adecue mejor a tu problema.
Hasta pronto.
Debes hacer lo siguiente:
1. Agrega a tu formulario un botón
2. En la ventana de propiedades del botón busca la pestaña: EVENTOS
3. Localiza el evento: AL HACER CLICK y seleccionalo.
4. Veras que aparece al final del renglón un botón con 3 puntitos.
5. Haz click sobre este botón y aparecerá un menú.
6. Selecciona la opción: GENERAR CÓDIGO

Añade tu respuesta

Haz clic para o

Más respuestas relacionadas