Por qué no se cargan los datos en mi listbox? (DAM)

Maestro Dante muy buenas noches, espero que este muy bien. Recurro a su amplia experiencia para que me ayude a resolver el problema con mi listbox, ya que no se cargan los datos y me manda un mensaje de error, modifique un poco la macro y ahora no funciona, no comprendo que hice mal. El error me aparece en la línea 199. De antemano agradezco su valiosa ayuda.

Esta es la macro:

Private Sub UserForm_Activate()
'Por.Dante Amor
Application.ScreenUpdating = False
Set h1 = Sheets("DATOS")
Set h2 = Sheets("temp")
u = h1.UsedRange.SpecialCells(11).Row
h2.Cells.Clear
cols = Array("A", "B", "C", "D", "E", "F", "G", "H", "I", "J", "K", "L", "M", "N", "O", "P", "Q", "R")
j = 19
For i = LBound(cols) To UBound(cols)
h1.Range(cols(i) & "3:" & cols(i) & u).Copy h2.[a2]
u2 = h2.Range("A" & Rows.Count).End(xlUp).Row
h2.Range("A2:A" & u2).RemoveDuplicates Columns:=1, Header:=xlNo
With h2.Sort
.SortFields.Clear
.SortFields.Add Key:=h2.Range("A2"), _
SortOn:=xlSortOnValues, Order:=xlAscending, _
DataOption:=xlSortTextAsNumbers
.SetRange h2.Range("A2:A" & u2)
.Header = xlNo
.MatchCase = False
.Orientation = xlTopToBottom
.SortMethod = xlPinYin
.Apply
End With

u2 = h2.Range("A" & Rows.Count).End(xlUp).Row
'Set rango = h2.Range("A1:A" & u2)
Me.Controls("ComboBox" & j).List = h2.Range("A2:A" & u2).Cells.Value
j = j + 1
Next
End Sub

1 respuesta

Respuesta
2

La macro funciona así:

Lee la columna A y pone todos esos datos en el combo19

La columna B en el combo20

La C en el combo21

La D en el 22

etc...

Entonces, según lo anterior, debes tener el combobox19, el 20, el 21, hasta el combobox36

Si no tienes esos combox, entonces te va a enviar un error.

En esta instrucción, se determina cuál es el combo inicial

j = 19

Si tus combos empiezan en otro número, entonces tienes que cambiar 19 por el número inicial que tienes, de ahí en adelante los combos deberán seguir en el consecutivo, por ejemplo si tus combos empiezan en el 5, entonces cambia:

j = 5

Y deberás tener desde el combo5 hasta el combo22

Como siempre, le agradezco mucho por compartir sus conocimientos y haberme ayudado a resolver mi problemas el cual  era como usted me lo explicó, tener el mismo número de combos con base a las columnas y establecer el orden de inicio. 

¡Gracias maestro! 

Que pase un excelente fin de semana.

Añade tu respuesta

Haz clic para o

Más respuestas relacionadas