Я пытаюсь найти способ заставить Google Таблицы автоматически объединять ячейки A1-C1 при создании нового листа. Мой коллега и я пытались придумать сценарий, который сделает это возможным, но все, что мы пробовали, изменяет только предыдущий лист, над которым мы работали, а не новый.
Пока что это два скрипты, которые мы пробовали, просто чтобы получить какой-то результат, который мы ищем:
function formatCells() {
var ss = SpreadsheetApp.getActiveSpreadsheet ();
var s = ss.getSheetByName('Combined')
var range = s.getDataRange()
var values = range.getValues();
for( var row = values.length -1; row >= 0; --row)
if (values[row][1] == 'Hello')
{s.getRange(row+1,1).mergeAcross();
}
}
и
function newSheetTrigger() {
var ss = SpreadsheetApp.getActive();
ScriptApp.newTrigger('newSheet')
.forSpreadsheet(ss)
.onChange()
.create();
}
function newSheet(e){
if (e.changeType == 'INSERT_GRID') {
SpreadsheetApp.flush();
SpreadsheetApp.getActiveSheet().getRange('A1:C1').merge();
}
}
Кто-нибудь знает, где мы пошло не так?