Un lector me ha pedido hace poco como montar un sistema extracción que permita sacar la información de diferentes hojas y agruparlas dentro de otro documento con Google Apps Script.
Me ha parecido un ejercicio interesante, así que, aquí lo tenéis:
function ExportAllSheets()
{
var spreadsheet = SpreadsheetApp.getActiveSpreadsheet();
var sheets = spreadsheet.getSheets();
var extractedfile = SpreadsheetApp.create("Extract");
var out = extractedfile.getSheets()[0];
for(var i = 0 ; i < sheets.length ; ++i)
{
var sheet = sheets[i];
var values = sheet.getDataRange().getValues();
out.getRange(out.getLastRow()+1, 1, values.length, values[0].length).setValues(values);
}
Logger.log(extractedfile.getUrl());
}
var spreadsheet = SpreadsheetApp.getActiveSpreadsheet();
var sheets = spreadsheet.getSheets();
var extractedfile = SpreadsheetApp.create("Extract");
var out = extractedfile.getSheets()[0];
for(var i = 0 ; i < sheets.length ; ++i)
{
var sheet = sheets[i];
var values = sheet.getDataRange().getValues();
out.getRange(out.getLastRow()+1, 1, values.length, values[0].length).setValues(values);
}
Logger.log(extractedfile.getUrl());
}
No es un código complicado pero como ejercicio práctico con cierta utilidad está bastante bien.
Si tenéis cualquier otra propuesta no vaciléis en hacérmela llegar
Nos vemos
Es posible extraer las hojas a una hoja de cálculo ya creada? Es decir que no se cree un documento nuevo al momento de exportar si no que vaya a uno ya creado
ResponderEliminarSi claro. En vez de crear el spreadsheet nuevo: var extractedfile = SpreadsheetApp.create("Extract"); deberias seleccionar uno ya existente.
EliminarEs fácil. Intentalo. Si no te sale, avisame y te digo como hacerlo.