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