Как вызвать функцию электронной таблицы Google onEdit? - PullRequest
0 голосов
/ 05 мая 2018
function oneWeek() {

  var sheetURL = SpreadsheetApp.getActive().getUrl()
  var spreadsheet = SpreadsheetApp.getActiveSpreadsheet();
  SpreadsheetApp.setActiveSheet(spreadsheet.getSheets()[0]);
  var sheet = spreadsheet.getActiveSheet();

  // do stuff with sheet

}

Как мне заставить эту функцию запускать onEdit?

Я пробовал это для листа,

function onEdit(event) { 

  var sheet = event.source.getSheetByName('x'); 
  // do stuff with sheet

}

РЕДАКТИРОВАТЬ: я забыл упомянуть, что мой скрипт сделал запрос https, поэтому onEdit не работает. Решение здесь: https://productforums.google.com/forum/#!topic/docs/0nxLYWXVo6Y

Поскольку этот сценарий выполняет другие функции, например HTTP-запрос, его нельзя назначить функциям onEdit () по умолчанию, вам необходимо создать его как пользовательскую функцию и назначить в меню «Правка». Edit-> Current Project Trigger и создайте новый для onEdit. Просто наведите его на свою функцию, и все готово.

1 Ответ

0 голосов
/ 05 мая 2018
function onEdit(e){
if(e.range.getSheet().getName()!='x'){return;}
//do stuff on sheet x here
}
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...