Cuadro combinado con lista personalizada

Tengo creado un filtro como se ve en la imagen, el problema que tengo es que al elegir la columna a filtrar me marca todos los encabezados desde "B10:M10".

Se puede configurar para que solo me deje filtrar desde la celda "C10:D10".

Saludos a todos y buen día

Private Sub ComboBox1_DropButtonClick()
Hoja1.ComboBox1.List = Application.Transpose(Hoja1.Range("B10").CurrentRegion.Resize(2).Value)
End Sub
Private Sub CommandButton1_Click()
Range("B10").CurrentRegion.AutoFilter
Hoja1.TextBox1.Value = ""
Hoja1.CheckBox1.Value = False
Hoja1.ComboBox1.Value = ""
End Sub
Private Sub TextBox1_Change()
Dim Criterio As String
Dim Columna As Integer
    If Hoja1.TextBox1.Value <> "" Then
        If Hoja1.ComboBox1.Value = "" Then Exit Sub
        If Hoja1.CheckBox1.Value = True Then
            Criterio = Hoja1.TextBox1.Value & "*"
        Else
            Criterio = "*" & Hoja1.TextBox1.Value & "*"
        End If
        Columna = Hoja1.ComboBox1.ListIndex + 1
        Range("B10").CurrentRegion.AutoFilter Field:=Columna, Criteria1:=Criterio
    Else
        Criterio = ""
        Range("B10").CurrentRegion.AutoFilter
    End If
End Sub

1 respuesta

Respuesta
1

Si solo necesitas que se muestren los títulos C10:D10 en tu combo, tal como se observa en la imagen, los cambios son los siguientes... manteniendo tu instrucción con Transpose (*):

Private Sub ComboBox1_DropButtonClick()
Hoja1.ComboBox1.List = Application.Transpose(Hoja1.Range("C10:D10"))
End Sub

Y luego en el TextBox la línea de Columna quedaría incrementando en 2:

        Columna = Hoja1. ComboBox1. ListIndex + 2

(*) En el punto 2 del video 11 de mi canal comento acerca del inconveniente (o riesgo a futuro) de mencionar a las hojas como Hoja1 o el nro que fuese. Te invito a mirarlo.

Sdos y no olvides valorar las respuestas.

Elsa

Añade tu respuesta

Haz clic para o

Más respuestas relacionadas