Ошибка при удалении содержимого таблицы Google Sheet на основе значения - PullRequest
1 голос
/ 13 июля 2020

Я пытаюсь удалить все содержимое таблицы в Google Sheet, когда значение в ячейке F1 - «УДАЛИТЬ», содержимое таблицы начинается с строки 3. Я попробовал этот код в скрипте, но он не сработал:

function onEdit(e) {
  var ss = SpreadsheetApp.getActiveSpreadsheet();
  var s = ss.getSheetByName("Sheet1");
  var r = s.getRange("F1");
  var v = r.getValues();
  if (v == "DELETE") s.deleteRow(3, s.getLastRow());
}

Ваш ответ будет оценен.

1 Ответ

1 голос
/ 13 июля 2020

Я думаю, что в yuor скрипте есть 2 точки модификации.

Точки модификации:

  • В этом случае используйте deleteRows вместо deleteRow.
  • Когда используется s.deleteRow(3, s.getLastRow()), когда последняя строка является самой нижней строкой на листе, возникает ошибка. Поэтому в этом случае используйте s.deleteRows(3, s.getLastRow() - 2);

Измененный скрипт:

От:
s.deleteRow(3, s.getLastRow());
Кому:
s.deleteRows(3, s.getLastRow() - 2);

Ссылки:

...