Puede crear un activador que se ejecute cada vez que se abra su hoja de cálculo.
Vaya a Herramientas → Editor de secuencias de comandos y pegue lo siguiente:
function onOpen(e) {
var spreadsheet = e.source;
var sheet = spreadsheet.getActiveSheet();
var lastRow = spreadsheet.getLastRow();
if (sheet.getMaxRows() == lastRow) {
sheet.appendRow([""]);
}
lastRow = lastRow + 1;
var range = sheet.getRange("A" + lastRow + ":A" + lastRow);
sheet.setActiveRange(range);
}
Haga clic en el botón Guardar , luego cierre el editor de scripts y la hoja de cálculo.
Ahora, abra su hoja de cálculo nuevamente. Déle un par de segundos, y debería ver que se inserta una nueva fila al final de su hoja, y que esa fila está seleccionada.
He creado esta hoja de cálculo para demostrar: no dude en copiarla (haga clic en Archivo → Copiar ). Necesitará ejecutar su propia copia para ver que el script se ejecuta con éxito.
El guión explicaba:
El onOpennombre de la función tiene un significado especial. Ver documentación . Se necesita un solo argumento, un Eventobjeto . Su sourcepropiedad es una referencia a la hoja de cálculo que se está abriendo. Con la hoja de cálculo, podemos hacer getLastRow()para encontrar el índice de la última fila que tiene contenido . getMaxRows()nos da el número máximo de filas en la hoja, incluso las vacías. Con ese conocimiento, podemos ver si la última fila tiene contenido; de ser así, agregamos una nueva fila vacía. Finalmente, podemos crear un rango e invocarlo setActiveRangepara pasar a la última fila.
Si solo desea pasar a la última línea, sin insertar nada, el script se puede simplificar de la siguiente manera:
function onOpen(e) {
var spreadsheet = e.source;
var sheet = spreadsheet.getActiveSheet();
var lastRow = spreadsheet.getLastRow();
var range = sheet.getRange("A" + lastRow + ":A" + lastRow);
sheet.setActiveRange(range);
}