Combobox combinado con datos de otro libro, formulario vba.
publicado
Hola buenas noches.
Mi consulta es la siguiente:
Tengo un formulario en Vba, con dos Combobox, deseo lo siguiente:
1. Que el primer combobox cargue por ejemplo los elementos:
- Frutas
- Verduras
- Carnes
2. Que dependiendo lo que seleccione en el primer combobox me aparezcan ciertas opciones en el combobox2, así:
Si en el combobox1 selecciono Frutas, aparezcan en el combobox2: Manzana, Pera, Banano, Piña.
Si en el combobox1 selecciono Verduras, aparezcan en el combobox2: Zanahoria, Remolacha, Cebolla.
Si en el combobox1 selecciono Carnes, aparezcan en el combobox2: Pescado, Res, Pollo.
Ahora bien, la lista: Frutas, Verduras y Carnes
y sus sublistas: (Manzana, Pera, Banano), (Zanahoria, Remolacha, Cebolla), (Piña. Pescado, Res, Pollo). están en otro libro en otra ubicación.
3. Que luego con un botón de comando, dando click, lo que seleccioné se copie en una hoja dentro del mismo libro; un dato en cada columna (como creando una base de datos).
Hola buenas noches.
Mi consulta es la siguiente:
Tengo un formulario en Vba, con dos Combobox, deseo lo siguiente:
1. Que el primer combobox cargue por ejemplo los elementos:
- Frutas
- Verduras
- Carnes
2. Que dependiendo lo que seleccione en el primer combobox me aparezcan ciertas opciones en el combobox2, así:
Si en el combobox1 selecciono Frutas, aparezcan en el combobox2: Manzana, Pera, Banano, Piña.
Si en el combobox1 selecciono Verduras, aparezcan en el combobox2: Zanahoria, Remolacha, Cebolla.
Si en el combobox1 selecciono Carnes, aparezcan en el combobox2: Pescado, Res, Pollo.
Ahora bien, la lista: Frutas, Verduras y Carnes
y sus sublistas: (Manzana, Pera, Banano), (Zanahoria, Remolacha, Cebolla), (Piña. Pescado, Res, Pollo). están en otro libro en otra ubicación.
3. Que luego con un botón de comando, dando click, lo que seleccioné se copie en una hoja dentro del mismo libro; un dato en cada columna (como creando una base de datos).
Tipo Detalle
1 Tipo Detalle
2 Fruta Manzana
3 Fruta Pera
4 Verdura Remolacha
Tengo el siguiente código:
****************************************************************************************
Private Sub UserForm_Activate()
Dim col As New Collection
Set hoja = Worksheets("Hoja1")
ufila = hoja.Cells(hoja.Rows.Count, 1).End(xlUp).Row
On Error Resume Next
For i = 1 To ufila
col.Add Item:=hoja.Cells(i, 1).Value, Key:=CStr(hoja.Cells(i, 1).Value)
Next i
For i = 1 To col.Count
Me.ComboBox1.AddItem col(i)
Next i
Me.ComboBox2.Clear
End Sub
Private Sub ComboBox1_Change()
Me.ComboBox2.Clear
grupo = ComboBox1.Value
Set hoja = Worksheets("Hoja1")
ufila = hoja.Cells(hoja.Rows.Count, 1).End(xlUp).Row
For i = 1 To ufila
dimension = Cells(i, 2)
If Cells(i, 1) = grupo Then
With Me.ComboBox2
.AddItem dimension
End With
End If
Next
End Sub
**********************************************************************************************
Espero me puedan ayudar,
Muchas gracias.