Logo
Formaciones Disponibles
[Google Apps Script] Obtener la última fila con texto de una determinada columna

[Google Apps Script] Obtener la última fila con texto de una determinada columna

[Google Apps Script] Obtener la última fila con texto de una determinada columna

11/08/2022

Google Apps Script

[Google Apps Script] Obtener la última fila con texto de una determinada columna

Imagínate que tienes un Sheet con un listado de palabras claves, el largo de esa lista es variable, es decir, nunca sabemos cuando acaba esta lista.

Lo que quiero hacer es saber cuando acaba esa lista para poder obtener todos valores y luego trabajar con ellos.

lastrow-with-data-in-a-colum-appscripts_1
var ss = SpreadsheetApp.getActiveSpreadsheet();
var sourceSheet = ss.getSheetByName("Lluvia de ideas");

var sourceRange = sourceSheet.getRange ("H4:H");
var allrowKws = sourceRange.getValues();
 var Alast = allrowKws.filter(String).length; //numero de la última fila con datos

  var sourceRangeLast = sourceSheet.getRange ("H4:H"+Alast);
  const kws = sourceRangeLast.getValues();

Destripando el código:

Aquí tenemos el rango donde tenemos los datos, sabemos en qué celda empieza, pero no el cual acaba:

var sourceRange = sourceSheet.getRange ("H4:H");

Usando filter vamos a saber el número de la fila en la que acaban los datos.

 var Alast = allrowKws.filter(String).length; 

Por último simplemente concatenamos los datos

 var sourceRangeLast = sourceSheet.getRange ("H4:H"+Alast);

Esto es lo que obtenemos:

lastrow-with-data-in-a-colum-appscripts_resultado

Fuente de inspiración: stackoverflow.com/a/17637159