Filtrar un cuadro de lista por medio de un cuadro combinado

03/02/2016 - 15:07 por Carlos Balbi | Informe spam
Buenas. Soy novato en esto, pero quiero realizar esto (a ver si me hago entender):
Tengo una tabla con un campo con lista de valores múltiples, y quisiera que en un formulario, que posee un cuadro combinado - con los mismos valores - y un cuadro de lista, al seleccionar un elemento del cuadro combinado, automáticamente me filtre el cuadro de lista.

Estuve probando con esto, pero no me funciona:
Private Sub combo_AfterUpdate()
If IsNull(combo.Value) Or combo.Value = "" Then
lst_lista.RowSource = "Select Campo1, Campo2 from Tabla"
Else
lst_lista.RowSource = "Select Campo1, Campo2 from Tabla like '*" & combo.Column(0) & "*'"
Exit Sub
End If
End Sub

Gracias de antemano. Saludos

Preguntas similare

Leer las respuestas

#1 juanfran
04/02/2016 - 10:37 | Informe spam
Se hace como si fueran combos en cascada. En la consulta origen del cuadro de lista tienes que filtrar por el combo (en el campo correspondiente). Luego en el afterupdate del combo le haces requery al cuadro de lista.

Es lo mismo que explican en esta web, aunque en tu caso el segundo control sea cuadro de lista: http://nubededatos.blogspot.com.es/...en-ms.html

El miércoles, 3 de febrero de 2016, 15:07:48 (UTC+1), Carlos Balbi escribió:
Buenas. Soy novato en esto, pero quiero realizar esto (a ver si me hago entender):
Tengo una tabla con un campo con lista de valores múltiples, y quisiera que en un formulario, que posee un cuadro combinado - con los mismos valores - y un cuadro de lista, al seleccionar un elemento del cuadro combinado, automáticamente me filtre el cuadro de lista.

Estuve probando con esto, pero no me funciona:
Private Sub combo_AfterUpdate()
If IsNull(combo.Value) Or combo.Value = "" Then
lst_lista.RowSource = "Select Campo1, Campo2 from Tabla"
Else
lst_lista.RowSource = "Select Campo1, Campo2 from Tabla like '*" & combo.Column(0) & "*'"
Exit Sub
End If
End Sub

Gracias de antemano. Saludos
Respuesta Responder a este mensaje
#2 ikanni
20/02/2016 - 11:53 | Informe spam
Prueba asi: Siempre y cuando el combo.Column(0) sea texto y la tabla 'Tabla' tenga el campo combo.Column(0)

Private Sub combo_AfterUpdate()
If IsNull(combo.Value) Or combo.Value = "" Then
lst_lista.RowSource = "Select Campo1, Campo2 from Tabla"
Else
lst_lista.RowSource = "Select Campo1, Campo2 from Tabla Where '" & combo.Column(0) & "'"
Exit Sub
End If
End Sub
email Siga el debate Respuesta Responder a este mensaje
Ads by Google
Help Hacer una preguntaRespuesta Tengo una respuesta
Search Busqueda sugerida