Function LlenarListaCombo(ListaCombo As Object, _
Hoja As Worksheet, _
Optional Columnas As Long = 1, _
Optional Fila As Long = 1, _
Optional Columna As Long = 1) As Long
ListaCombo.ColumnCount = Columnas
For x = Fila To Hoja.Cells(Rows.Count, Columna).End(xlUp).Row
ListaCombo.AddItem
n = 0
For y = Columna To Columna + Columnas - 1
ListaCombo.List(ListaCombo.ListCount - 1, n) = Hoja.Cells(x, y)
n = n + 1
Next
Next
CargarListaCombo = ListaCombo.ListCount
End Function
[/CODE]
Ejemplo:
. Llenar un combobox [b]ComboBox1 [/b]de 3 columnas desde la hoja [b]Listas[/b], Fila 2, Columna 5
[CODE]
Sub LlamarFunción()
LlenarListaCombo ComboBox1, Sheets("Listas"), 3, 2, 5
End Sub
[/CODE]
____________________________________________________________________________
Os dejo una función para llenar un control Listbox/Combobox desde cualquier hoja con cualquier número de filas y columnas (Máximo 10).
El resultado de la función es una variable tipo Long con el número de filas del combobox/listbox.
LlenarListaCombo(Control listbox/combobox, Hoja [, Nº columnas=1, Fila inicio=1, Columna inicio=1])
Ejemplo:
. Llenar un combobox [b]ComboBox1 [/b]de 3 columnas desde la hoja [b]Listas[/b], Fila 2, Columna 5
Sub LlamarFunción()
LlenarListaCombo ComboBox1, Sheets("Listas"), 3, 2, 5
End Sub
[/CODE]
_____________________________________________________________________
.