ComboBox y ListBox en excel
No se si estaré bien ubicado con mi pregunta.
Tengo este código que un experto ya trató de ayudarme. A pesar de su voluntad y ganas de ayuda, no fue posible llegar a un termino positivo y el experto tuvo que descartar mi pregunta. Código
Private Sub UserForm_Initialize()
'ComboPrinte.clear pero no me sirvio
Application.ScreenUpdating = False
'Llenar ComboBox
Dim oSheet As Object
With Printe.ComboPrinte
'recorremos las hojas del conjunto HOJAS
For Each oSheet In Sheets
'verificamos que el objeto se trata de una hoja u hoja Gráfico
If TypeName(oSheet) = "Worksheet" Or TypeName(oSheet) = "Chart" Then
'si lo es, agregamos a la lista
.AddItem oSheet.Name 'Hasta aqui ComboPrinte
End If
'Llenar ListBox
ActiveSheet.Select 'Selección de la hoja activa
Cells(2, 1).Select
pepe = Range("A65536").End(xlUp).Row 'Dá rango de lineas para relleno del ListBox
ListPrinte.RowSource = "A2:i" & pepe 'Dá rango de columnas para relleno del ListBox
ListPrinte.ColumnWidths = "110;90;30;46;30;46;30;46;120" 'ancho de columnas del ListBox
ListPrinte.ColumnCount = 9 'Cantidad columnas del ListBox
Next
End With
Application.ScreenUpdating = True
End Sub
Llena un ListBox y un ComboBox
y este
Private Sub ComboPrinte_Change()
Application.ScreenUpdating = False
Sheets(ComboPrinte.Text).Select
UserForm_Initialize 'inicia codigo de inicio del formulario para el ListBox
Application.ScreenUpdating = True
End Sub
Esto para seleccionar una hoja y llenar el ListBox con los datos de la hoja seleccionada en el combo, PROBLEMA;
Cuando selecciono una hoja en el combobox, se llena el Listbox con los datos de la hoja seleccionada, PERFECTO pero, en el combobox se van duplicando los nombres de las hojas, si selecciono segunda ves, se triplican los nombres, vuelvo a seleccionar otra, quedan cuatriplican los nombres y así sucesivamente, de selección en selección se me duplican los nombres de las hojas en el combobox.
Ya le metí un ComboPrinte. Clear al inicio del código pero no me sirvió
¿Dónde tengo el problema y como solucionarlo?
Tengo este código que un experto ya trató de ayudarme. A pesar de su voluntad y ganas de ayuda, no fue posible llegar a un termino positivo y el experto tuvo que descartar mi pregunta. Código
Private Sub UserForm_Initialize()
'ComboPrinte.clear pero no me sirvio
Application.ScreenUpdating = False
'Llenar ComboBox
Dim oSheet As Object
With Printe.ComboPrinte
'recorremos las hojas del conjunto HOJAS
For Each oSheet In Sheets
'verificamos que el objeto se trata de una hoja u hoja Gráfico
If TypeName(oSheet) = "Worksheet" Or TypeName(oSheet) = "Chart" Then
'si lo es, agregamos a la lista
.AddItem oSheet.Name 'Hasta aqui ComboPrinte
End If
'Llenar ListBox
ActiveSheet.Select 'Selección de la hoja activa
Cells(2, 1).Select
pepe = Range("A65536").End(xlUp).Row 'Dá rango de lineas para relleno del ListBox
ListPrinte.RowSource = "A2:i" & pepe 'Dá rango de columnas para relleno del ListBox
ListPrinte.ColumnWidths = "110;90;30;46;30;46;30;46;120" 'ancho de columnas del ListBox
ListPrinte.ColumnCount = 9 'Cantidad columnas del ListBox
Next
End With
Application.ScreenUpdating = True
End Sub
Llena un ListBox y un ComboBox
y este
Private Sub ComboPrinte_Change()
Application.ScreenUpdating = False
Sheets(ComboPrinte.Text).Select
UserForm_Initialize 'inicia codigo de inicio del formulario para el ListBox
Application.ScreenUpdating = True
End Sub
Esto para seleccionar una hoja y llenar el ListBox con los datos de la hoja seleccionada en el combo, PROBLEMA;
Cuando selecciono una hoja en el combobox, se llena el Listbox con los datos de la hoja seleccionada, PERFECTO pero, en el combobox se van duplicando los nombres de las hojas, si selecciono segunda ves, se triplican los nombres, vuelvo a seleccionar otra, quedan cuatriplican los nombres y así sucesivamente, de selección en selección se me duplican los nombres de las hojas en el combobox.
Ya le metí un ComboPrinte. Clear al inicio del código pero no me sirvió
¿Dónde tengo el problema y como solucionarlo?
1 Respuesta
Respuesta de santiagomf
1