Я создал основанный на времени триггер, как я всегда делал в листах Google.Однако, загадкой является то, что этот не срабатывает.
Я включил триггер, и выполнение показывает, что скрипт выполняется каждую минуту.Однако сценарий не выполняется должным образом.У меня есть отладочное сообщение в сценарии, которое отображается в журналах стековых драйверов, и это весело.
Если я запускаю сценарий вручную, он работает нормально.Почему это происходит?
Это мой сценарий:
function fillFormula() {
// this script will change the date format to the correct one
// var sheet = SpreadsheetApp.getActiveSheet();
console.log({message: "My timed trigger function is running", inputs: arguments});
// var formulas = rows.getFormulas();
var ss = SpreadsheetApp.getActive();
var ss1 = ss.getSheets()[0];
var rows = ss.getDataRange();
var numRows = rows.getNumRows();
var sh = ss.getActiveSheet(), lRow = sh.getLastRow();
var lCol = sh.getLastColumn(), range = sh.getRange(2,5,1,1);
if(numRows>2){
range.copyTo(sh.getRange(3, 5, numRows-2, 1), {contentsOnly:false});}
//var newRange = sh.getRange(lRow+1,1,1,lCol);
//newRange.setFormulas(formulas);
var dateVal = ss1.getRange(numRows,4).getValue();
var timeStamp = Utilities.formatDate(new Date(), Session.getScriptTimeZone(), "MM-dd-yyyy HH:mm");
if(dateVal==""){
SpreadsheetApp.getActiveSpreadsheet().getActiveSheet().getRange(numRows, 4).setValue(timeStamp);
}
}