valor - Obtener el número de celdas llenas en una columna(VBA)
seleccionar rango variable vba (5)
Mi primera columna es un índice, con números crecientes monótonamente, que termina en un punto no predecible. Ahora quiero saber cuántas entradas tiene esta columna. ¿Hay una forma mejor de iterar a través de esto y tener cuidado con una celda vacía?
Para encontrar la última columna rellena usa lo siguiente:
lastColumn = ActiveSheet.Cells(1, Columns.Count).End(xlToLeft).Column
Si desea buscar la última celda rellenada en una columna particular, el mejor método es:
Range("A" & Rows.Count).End(xlUp).Row
Este código usa la última celda en toda la columna (65536 para Excel 2003, 1048576 en versiones posteriores) y luego encuentra la primera celda llena sobre ella. Esto tiene la capacidad de ignorar "rupturas" en sus datos y encontrar la última fila verdadera.
También puede utilizar:
UsedRange.Rows.Count
También puedes usar
Cells.CurrentRegion
para darle un rango que representa los límites de sus datos en la hoja activa actual
Msdn dice sobre el tema
Devuelve un objeto Range que representa la región actual. La región actual es un rango limitado por cualquier combinación de filas en blanco y columnas en blanco. Solo lectura.
A continuación, puede determinar el recuento de columnas a través de
Cells.CurrentRegion.Columns.Count
y la fila cuenta a través
Cells.CurrentRegion.Rows.Count
Una forma es: (Supone que la columna de índice comienza en A1)
MsgBox Range("A1").End(xlDown).Row
Que busca la primera celda desocupada hacia abajo desde A1 y le muestra su número de fila ordinal.
Puede seleccionar la siguiente celda vacía con:
Range("A1").End(xlDown).Offset(1, 0).Select
Si necesita el final de un conjunto de datos (incluidos los espacios en blanco), intente: Rango ("A: A"). SpecialCells (xlLastCell).