Макрос листов Google не запускается при срабатывании - PullRequest
0 голосов
/ 31 декабря 2018

Я создал следующий скрипт для удаления содержимого в диапазоне с помощью макроса.

Он работает правильно, когда я запускаю макрос.

Но он не работает, когда я устанавливаю время на основеспусковой крючок.Журнал триггера говорит, что он успешно запущен, но содержимое ячейки фактически не было удалено

Вот мой код:

function Clear_Send_Status() {
  var spreadsheet = SpreadsheetApp.getActive();
  spreadsheet.getRange('J2:J13').activate();
  spreadsheet.getActiveRangeList().clear({contentsOnly: true, skipFilteredRows: true});
};

1 Ответ

0 голосов
/ 31 декабря 2018

«Проблема» заключается в том, что управляемые временем триггеры не могут активировать диапазоны и не могут получить активный список диапазонов, потому что это методы, которые требуют, чтобы пользователь запустил скрипт.Учтите, что при запуске этого скрипта нет никакой гарантии, что электронная таблица даже открыта в браузере.

Попробуйте

function Clear_Send_Status() {
  var spreadsheet = SpreadsheetApp.getActive();
  var range = spreadsheet.getRange('J2:J13');
  range.clear({contentsOnly: true, skipFilteredRows: true});
};

Это напрямую работает с переменной Range rangeпопытаться активировать его, а затем работать с активным RangeList.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...