Combobox1 equivale al nombre de hojas y combobox2 dependiente carga datos de la columna A de cada hoja

Tengo el siguiente formulario

En este formulario el combobox1 se carga con los nombres de las hojas: "ON TRADE". "tradicional"."MODERNO","RM"

Y cuenta con el siguiente código en el evento initialize

Private Sub UserForm_Initialize()
Dim intHojas As Integer
    Dim i As Integer
    intHojas = ThisWorkbook.Sheets.Count
    For i = 3 To intHojas
        Me.ComboBox1.AddItem ThisWorkbook.Sheets(i).Name
    Next i
End Sub

Lo que quisiera es que al momento de cambiar el dato del combobox1 con el evento changue en el combobox 2 se carguen los datos correspondientes a la columna A de cada hoja

Luego de seleccionar el combobox 2 el evento changue cargue cada textbox, desde el textbox 1 al textbox3 con los datos correspondientes a cada fila que contenga el OC seleccionado en el combobox2

SIGUIENDO

   

1 Respuesta

Respuesta
1

Va la macro

Private Sub ComboBox1_Change()
ComboBox2.Clear
Set h = Sheets(ComboBox1.Value)
    For i = 2 To h.Range("A" & Rows.Count).End(3).Row
        ComboBox2.AddItem h.Cells(i, 1)
    Next i
End Sub
Private Sub ComboBox2_Change()
    Set h = Sheets(ComboBox1.Value)
    Set b = h.Range("A:A").Find(ComboBox2.Text, lookat:=xlWhole)
    If Not b Is Nothing Then
        fila = b.Row
        '
        TextBox1 = h.Cells(fila, "B")
        TextBox2 = h.Cells(fila, "C")
        '
        'vas agregando el resto
        '
    End If
End Sub

Si no hay más duda finaliza

Añade tu respuesta

Haz clic para o

Más respuestas relacionadas