Excel: Instrucciones para recorrer un rango hasta la última fila

Muchas veces tenemos que hacer que una macro recorra un rango hasta la última fila ocupada. En este truco veremos cómo hacerlo.
LUN, 9 / FEB / 2015

Eso se hace fácilmente con un ciclo For… Next, siempre que sepamos cuál es la fila de la última fila ocupada. Esto lo logramos con la siguiente instrucción:

uf = Range(“A1”).End(xlDown).Row

Esto representa situarse en la celda [A1] y oprimir la combinación <Control+Flecha abajo> para bajar hasta la última celda ocupada de la columna.

De esa celda tomamos el número de fila con la propiedad Row y lo asignamos a la variable uf (por “última fila”).

Esta técnica puede fallar si en la primera fila tenemos un título y el resto de la columna está vacío. En ese caso, la variable uf recibirá como valor el número de la última fila de la hoja. Para prever esta posibilidad, podemos usar esta otra instrucción:

uf = Range(“A10000”).End(xlUp).Row

Esta instrucción equivale a subir desde la celda [A10000] hasta la primera celda ocupada que aparezca, que será la última de la columna, yendo hacia abajo.

Mediante esta técnica podemos mostrar cualquiera de los cuadros de diálogo estándar de Excel con solo indicar entre paréntesis el argumento correspondiente al cuadro deseado. Al comenzar a escribir la instrucción Application.Dialogs (se descuelga una lista con los argumentos válidos. Para que esta lista aparezca efectivamente, tenemos que dirigirnos a [Herramientas/Opciones] y, en la ficha [Editor], marcar las opciones [Lista de miembros automática] e [Información rápida automática].

Queremos recorrer esta lista desde la segunda fila (excluimos la fila de títulos) hasta la última fila ocupada. La macro debe darse cuenta de dónde termina la lista.

Queremos recorrer esta lista desde la segunda fila (excluimos la fila de títulos) hasta la última fila ocupada. La macro debe darse cuenta de dónde termina la lista.

¡Comparte esta noticia!

Últimos lanzamientos Ver más