Seleccione una columna completa menos la fila del encabezado en una macro de Excel

8

¿Cómo accedería a un rango que corresponde a una columna completa que comienza en la fila 2 (hay una fila de encabezado)?

El final de la selección debe ser la última celda no vacía de la columna.

Dave
fuente

Respuestas:

2

Prueba esto:

Range(Range("A2"),Range("A2").End(xldown)).Select

o esto:

Range(Range(Cells(2, 1), Cells(2, 1)), Range(Cells(65535, 1), Cells(65535, 1)).End(xlUp)).Select
Michael Galos
fuente
2

En referencia a esta respuesta SO , el único método seguro es el .find()método.
Todos los demás métodos pueden dar resultados incorrectos si previamente eliminó algunas celdas.

Ejemplo para obtener las últimas celdas

Lastrow =  Cells.Find("*", [A1], , , xlByRows, xlPrevious).Row
Lastcol =  Cells.Find("*", [A1], , , xlByColumns, xlPrevious).Column

Y una respuesta específica a su pregunta (suponiendo que sus datos estén en la columna 2, comenzando en la fila 2)

Range([B2], [B:B].Find("*", [B1], , , xlByRows, xlPrevious)).select

ingrese la descripción de la imagen aquí

nixda
fuente
1

Puede usar los atajos de teclado de Excel. Prueba Ctrl+ Home.

Esto lo llevaría a la celda A1 (si no ha utilizado el panel de congelación). Baje una celda y luego use los botones Ctrl+ Shift+ Down arrowpara seleccionar hasta la última fila ingresada.

Si tiene que seleccionar el valor de la columna, use el right arrowbotón en lugar del down arrowbotón.

Peter Mortensen
fuente
0

Este código promedia todo menos el encabezado con el encabezado en la celda "B1"

Dim GG as Long
GG = Application.WorksheetFunction.Average(ActiveSheet.Range("B2", Range("B2").End(xlDown)))
RWB
fuente