variable valor una ultima tomar sirve seleccionar rango que para obtener numero macro hoja hasta fila datos cumplan condicion con celdas celda activesheet activa vba excel-vba excel

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).