I'm trying to send data to another spreadsheet. To do it, I wrote a code which I've been using for months, but I'm trying to use the same code with another spreadsheet and suddenly the code stops working.
That is the sheet that I'm getting the data:
ThisthesheetthatI'mputtingthedate:
Andthat'sthecodeI'musetodoit:
function copyConsolidate2(sourceName, targetName,numberColumns)
{
//Copia de uma planilha "SOURCE" e cola na ultima posição da planilha "TARGET"
var sheetSource = SpreadsheetApp.getActiveSpreadsheet().getSheetByName("BD_clean");
var Sheet_Target = SpreadsheetApp.openById("1-wGkTdIkEpTJN1SDibgfckI24diiEI4Yc7eJispE8Gs"); // Identifica planilha destino
var Range_Target = Sheet_Target.getSheetByName('DATABASE'); // Identifica aba da planilha destino
//sheetSource.getRange('BD_clean!A2').setValue(new Date()) // Insere data e hora do cadastro no Range BD_clean!A2
var numberRowsCopy = getRowNumbers(sheetSource,"A:A") - 1; // -1 porque o cabeçalho não deve ser copiado, então é quantidade de linhas menos cabeçalho
var numberRowsOnTarget = getRowNumbers(Range_Target,"A:A") + 1 ; // +1 porque deve colocar os novos dados na proxima posição e não na propria
var copiedValues = sheetSource.getRange(2, 1,numberRowsCopy,numberColumns).getValues(); //Pega os valores a partir da segunda linha na primeira coluna,
//pegando "numberRowsCopy" linhas e "numberColumns" colunas
Range_Target.getRange(numberRowsOnTarget, 1,numberRowsCopy,numberColumns).setValues(copiedValues);
}
//''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''
function getRowNumbers(sheet,columnRange) {
var column = sheet.getRange(columnRange);
var values = column.getValues();
var ct = 0;
//Loop que conta quantidade de células até encontrar uma célula vazia
while ( values[ct] && values[ct][0] != "" ) {
ct++;
}
return (ct);
}