Cargar un rango de datos que tiene algunas filas y columnas vacías a un ListBox vba excel

Me gustaría poder seleccionar un rango de una hoja excel, por ej. Columnas B a I, las filas comenzaría en la 3 hasta final del rango no vacío de la columna C (que es el que contiene mayor numero de filas) y que ese rango se muestre en un ListBox de un Userform. Aclarar que en ese rango hay celdas y columnas vacías.

Encontré este código que lo realiza:

ucol = ActiveCell.SpecialCells(xlLastCell).Column
fin = ActiveCell.SpecialCells(xlLastCell).Address
ListBox1.ColumnCount = ucol
ListBox1.RowSource = "B3:" & fin

Pero obliga a que la hoja este activa y no oculta y el listbox muestra toda la hoja y quería evitar eso también.

(Perdón al autor del código pero ando ya tan mareado con esto).

1 respuesta

Respuesta
1

Tendrás que nombrar a la hoja y celda en lugar de utilizar ActiveCell, porque al estar oculta no está activa.

Dejo comentarios en el código para que ajustes a tus referencias.

Private Sub CommandButton2_Click()
'x Elsmatilde
Set hojax = Sheets("Resumen")       'nombre de la hoja oculta
Set celdax = hojax.Range("B14")     '1ra celda del rango
'----------------
ucol = celdax.SpecialCells(xlLastCell).Column   'última col
fin = celdax.SpecialCells(xlLastCell).Address   'ultima fila
ListBox1.ColumnCount = ucol
'-----------------
ListBox1.RowSource = "=Resumen!$B$14:" & fin    'mencionar la hoja oculta
End Sub

PD) Te dejé respuesta en tu consulta anterior. Se que ya la habías resuelto pero quizás quieras ver/probar  otro modo de hacerlo. Agradeceré si dejas algun tilde o valoración para que se me quite de las consultas pendientes.

Cómo asignar una letra para el año de una fecha

Sdos.

Elsa

http://aplicaexcel.com

https://www.youtube.com/c/ElsaMatilde 

¡Muchas gracias Elsa!

Funciona a la perfección, gracias.

(Disculpa no haberme dado cuenta de la otra respuesta, mucho más claro es la tuya).

Suelo ver tu blog. Nuevamente gracias.

Añade tu respuesta

Haz clic para o

Más respuestas relacionadas