Listas dependientes en ComboBox no cargan completas

Para Dante Amor

Buenas le comento que el problema que me está presentando es que en la lista que se me carga producto de mi selección en el combobox2 solo me incluye por así decirlo las primeras 4 listas de datos en el combobox3, cuando dependiendo de lo seleccionado en el combobox2 debería de buscarme en una lista de 16 columnas y seleccionar la que corresponda y cargarla en el combobox3

Adicional a esto debo agregar que de las únicas cuatro listas que me carga al final, la más grande no la carga completa

Detallo más o menos como debe trabajar

1 en el primer combo se me cargan los países automáticamente, Costa Rica, Guatemala, El Salvador, etc.

2 en el segundo combo se me cargan los formatos de tiendas según el país: Supermercado, Descuento, Bodega, etc.

3 en el tercer y último combo se me deberían cargar las tiendas que corresponden al formato seleccionado en el combo 2

El problema que está dando en que por ejemplo sin importar que selección haga siempre me selecciona solo la clasificación de Costa Rica, y en el caso de la lista de descuento que corresponde a costa rica no la selecciona completa.

Pero si por ejemplo selecciono el salvador, selecciono luego supermercado, me tendría que cargar las tiendas de formato supermercado que corresponden a el salvador pero me sigue cargando las tiendas de costa rica y sin importar la selección las carga de forma incompleta

1 respuesta

Respuesta
1

H o l a: Envíame tu archivo con ejemplos y me explicas cómo debería funcionar.

Mi correo [email protected]

En el asunto del correo escribe tu nombre de usuario “Marco Sandoval Ruiz” y el título de esta pregunta.

H o la: Para mostrar las tiendas, hay que buscar el formato para encontrar la columna, ya con la columna se pueden cargar las tiendas.

Te anexo el código actualizado:

Dim h1, h2, h3, h4
'
Private Sub ComboBox1_Change()
'Por.Dante Amor
    ComboBox2.Clear
    ComboBox3.Clear
    If ComboBox1.ListIndex = -1 Or ComboBox1 = "" Then Exit Sub
    col = ComboBox1.ListIndex + 1
    For i = 2 To h3.Range("A" & Rows.Count).End(xlUp).Row
        ComboBox2.AddItem h3.Cells(i, col)
    Next
End Sub
'
Private Sub ComboBox2_Change()
'Por.Dante Amor
    ComboBox3.Clear
    If ComboBox2.ListIndex = -1 Or ComboBox2 = "" Then Exit Sub
    '
    Set b = h4.Rows(1).Find(ComboBox2, lookat:=xlWhole)
    If Not b Is Nothing Then
        col = b.Column
        For i = 2 To h4.Cells(Rows.Count, col).End(xlUp).Row
            ComboBox3.AddItem h4.Cells(i, col)
        Next
    Else
        MsgBox "No existe el formato en la hoja Tiendas", vbCritical, "REVISAR TIEDAS"
    End If
End Sub
'
Private Sub UserForm_Activate()
'Por.Dante Amor
    Set h1 = Sheets("Menu")
    Set h2 = Sheets("Paises")
    Set h3 = Sheets("Formatos")
    Set h4 = Sheets("Tiendas")
    For i = 1 To h2.Range("A" & Rows.Count).End(xlUp).Row
        ComboBox1.AddItem h2.Cells(i, 1)
    Next
End Sub
'S aludos. Dante Amor. Recuerda valorar la respuesta. G racias

Añade tu respuesta

Haz clic para o

Más respuestas relacionadas